服务器之家

服务器之家 > 正文

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

时间:2019-06-06 10:57     来源/作者:流风,飘然的风

本文实例讲述了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位。

希望本文所述对大家PHP程序设计有所帮助。

相关文章

热门资讯

叠猫猫队长可以退出吗 叠猫猫队长怎么换队伍
叠猫猫队长可以退出吗 叠猫猫队长怎么换队伍 2019-06-05
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字 2019-06-05
淘宝合合卡可以送好友吗 淘宝合合卡快速获得方式
淘宝合合卡可以送好友吗 淘宝合合卡快速获得方式 2019-06-13
叠猫猫可以邀请多少人 叠猫猫大挑战一个队最多多少人
叠猫猫可以邀请多少人 叠猫猫大挑战一个队最多多少人 2019-06-05
淘宝618叠猫猫怎么退出队伍?每天可退出几次队伍
淘宝618叠猫猫怎么退出队伍?每天可退出几次队伍 2019-06-06
返回顶部