技术-php

php 获取毫秒时间戳

2018-08-08  本文已影响0人  6f748fe54ad4

在开发的过程中,请求接口时,经常以时间戳作为双方约定好的参数。那此时一定要再追问一句,是10位时间戳还是13位时间戳,即为毫秒时间戳。

在工程中,搜索底层函数,获得了php语言下对于毫秒时间戳的两种主要的实现方式。

深入看了下两种方式的原理,在此分享给大家。


/***********第一种方式***********/

 ceil(microtime(true)*1000);

/***********第二种方式

* 获取毫秒时间戳

* @return number

*/

private static function getMillisecond() {

    list($t1, $t2) = explode(' ', microtime());

    return (float)sprintf('%.0f', (floatval($t1) + floatval($t2)) * 1000);

}


总结:

推荐第一种方式,看起来简洁明了,代码量小。

microtime 返回当前 Unix 时间戳的微秒数。

参数 get_as_float可选,PHP 5.0.0新增。

当设置为 TRUE 时,规定函数应该返回浮点数,否则返回字符串。

第二种方式的原理就是先返回字符串 "microsec sec" ,其中 sec 为自 Unix 纪元(0:00:00 January 1, 1970 GMT)起的秒数,microsec 为微秒部分。

然后切割字符串,(秒数+微妙数)*1000, 格式匹配后返回毫秒数。

上一篇下一篇

猜你喜欢

热点阅读