首页 > 开发 > PHP > 正文

PHP实现获取毫秒时间戳的方法【使用microtime()函数】

2024-05-04 22:40:48
字体:
来源:转载
供稿:网友

本文实例讲述了PHP实现获取毫秒时间戳的方法。分享给大家供大家参考,具体如下:

PHP获取毫秒时间戳,利用microtime()函数

php本身没有提供返回毫秒数的函数,但提供了一个microtime()函数,借助此函数,可以很容易定义一个返回毫秒数的函数。

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

function getMillisecond() {  list($s1, $s2) = explode(' ', microtime());  return (float)sprintf('%.0f', (floatval($s1) + floatval($s2)) * 1000);}/** 获取时间差,毫秒级*/function get_subtraction(){  $t1 = microtime(true);  $t2 = microtime(true);  return (($t2-$t1)*1000).'ms';}/** 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);}$millisecond = get_millisecond();$millisecond = str_pad($millisecond,3,'0',STR_PAD_RIGHT);echo date("YmdHis").$millisecond;

运行结果:

20190301013407194

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

PS:这里再为大家推荐几款时间及日期相关工具供大家参考:

在线日期/天数计算器:
http://tools.jb51.net/jisuanqi/date_jisuanqi

在线日期计算器/相差天数计算器:
http://tools.jb51.net/jisuanqi/datecalc

在线日期天数差计算器:
http://tools.jb51.net/jisuanqi/onlinedatejsq

Unix时间戳(timestamp)转换工具:
http://tools.jb51.net/code/unixtime

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php日期与时间用法总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表