PHP獲取毫秒時間戳,利用microtime()函數(shù)
php本身沒有提供返回毫秒數(shù)的函數(shù),但提供了一個microtime()函數(shù),借助此函數(shù),可以很容易定義一個返回毫秒數(shù)的函數(shù)。
php的毫秒是沒有默認(rèn)函數(shù)的,但提供了一個microtime()函數(shù),該函數(shù)返回包含兩個元素,一個是秒數(shù),一個是小數(shù)表示的毫秒數(shù),借助此函數(shù),可以很容易定義一個返回毫秒數(shù)的函數(shù),
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 毫秒
*返回時間戳的毫秒數(shù)部分
*/
function get_millisecond()
{
list($usec, $sec) = explode(" ", microtime());
$msec=round($usec*1000);
return $msec;
}
/*
*
*返回字符串的毫秒數(shù)時間戳
*/
function get_total_millisecond()
{
$time = explode (" ", microtime () );
$time = $time [1] . ($time [0] * 1000);
$time2 = explode ( ".", $time );
$time = $time2 [0];
return $time;
}
/*
*
*返回當(dāng)前 Unix 時間戳和微秒數(shù)(用秒的小數(shù)表示)浮點(diǎn)數(shù)表示,常用來計(jì)算代碼段執(zhí)行時間
*/
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;
需要注意,在32位系統(tǒng)中php的int最大值遠(yuǎn)遠(yuǎn)小于毫秒數(shù),所以不能使用int類型,而php中沒有l(wèi)ong類型,所以只好使用浮點(diǎn)數(shù)來表示。由于使用了浮點(diǎn)數(shù),如果精度設(shè)置不對,使用echo顯示獲取的結(jié)果時可能會不正確,要想看到輸出正確的結(jié)果,精度設(shè)置不能低于13位。文章來源:http://www.zghlxwxcb.cn/news/detail-609968.html
傳送門文章來源地址http://www.zghlxwxcb.cn/news/detail-609968.html
到了這里,關(guān)于PHP實(shí)現(xiàn)獲取毫秒時間戳的方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!