>  기사  >  php教程  >  php 获取当前时间的毫秒数程序代码

php 获取当前时间的毫秒数程序代码

WBOY
WBOY원래의
2016-06-13 10:02:261077검색

在php中获取时间日期我们可以使用date函数,如果获取毫秒可以使用time但不能具体分出来,下面我来介绍一些php获取当前时间毫秒的实例。

php本身没有提供返回毫秒数的函数,但提供了一个microtime()函数,该函数返回一个array,包含两个元素,一个是秒数,一个是小数表示的毫秒数,借助此函数,可以很容易定义一个返回毫秒数的函数,例如:

 代码如下 复制代码

function getMillisecond() {
    list($s1, $s2) = explode(' ', microtime());
    return (float)sprintf('%.0f', (floatval($s1) + floatval($s2)) * 1000);
}

需要注意,在32位系统中php的int最大值远远小于毫秒数,所以不能使用int类型,而php中没有long类型,所以只好使用浮点数来表示。由于使用了浮点数,如果精度设置不对,使用echo显示获取的结果时可能会不正确,要想看到输出正确的结果,精度设置不能低于13位。

 代码如下 复制代码
        /*
         * microsecond 微秒     millisecond 毫秒
         *返回时间戳的毫秒数部分
         */
        function get_millisecond()
        {
                list($usec, $sec) = explode(" ", microtime());
                $msec=round($usec*1000);
                return $msec;
                
        }
        
        /*
         *
         *返回字符串的毫秒数时间戳
         */
        function get_total_millisecond()
        {
                $time = explode (" ", microtime () );
                $time = $time [1] . ($time [0] * 1000);
                $time2 = explode ( ".", $time );
                $time = $time2 [0];
                return $time;
        }
   
        /*
         *
         *返回当前 Unix 时间戳和微秒数(用秒的小数表示)浮点数表示,常用来计算代码段执行时间
         */
        
        function microtime_float()
        {
            list($usec, $sec) = explode(" ", microtime());
            return ((float)$usec + (float)$sec);
        }

需要注意,在32位系统中php的int最大值远远小于毫秒数,所以不能使用int类型,而php中没有long类型,所以只好使用浮点数来表示。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.