獲取Unix 時間戳帶上毫秒

weixin_34037977發表於2018-03-13

先看官網手冊引數

microtime

microtime ([ bool $get_as_float ] )

echo microtime(true);  // 1520911041.7862
echo '<br>';
echo microtime();  // 0.78618500 1520911041
echo '<br>';
echo time();   // 1520911041

microtime — 返回當前 Unix 時間戳和微秒數
所以 0.78618500是微秒數    1520911041 是時間戳 和time()得到的是一樣的結果
  • 如果想要獲取帶微秒的時間戳,微秒是3位數字,乘以1000即可

獲取帶微秒的時間戳

1. (int)(microtime(true)*1000);

2. function msectime() {
    list($msec, $sec) = explode(' ', microtime());
   return $msectime =  (float)sprintf('%.0f', (floatval($msec) + floatval($sec)) * 1000);
}
3.function getOrderId(){
    list($usec, $sec) = explode(" ", microtime());
    $msec=round($usec*1000);
    return time().$msec;
}
> 總之,方法就是獲取到 microtime()中陣列的第一個鍵乘以1000就是微秒

相關文章