php取得目前毫秒時間戳記的方法:使用【microtime()】函數獲取,程式碼為【list($msec, $sec) = explode(' ', microtime());】。
php取得目前毫秒時間戳記的方法:
提供了一個microtime()函數,如果呼叫時不含可選參數,本函數以"msec sec" 的格式傳回字串,其中sec 是自Unix 紀元(0:00:00 January 1, 1970 GMT)起到現在的秒數,msec 是微秒部分。字串的兩部分都是以秒為單位傳回的。
microtime()函數的詳細說明
<?php echo microtime(); //输出结果是 //0.25139300 1138197510
注意了,它的結果是分兩部分的,也就是前半部是毫秒(但是單位是秒) ,後半部是秒。
現在,我們依據這個做下修改,如下:
<?php list($msec, $sec) = explode(' ', microtime()); $msectime = (float)sprintf('%.0f', (floatval($msec) + floatval($sec)) * 1000);
這樣就可以了,$msectime就是目前的毫秒數!可以將這兩行封裝成一個函數方便使用。
<?php //返回当前的毫秒时间戳 function msectime() { list($msec, $sec) = explode(' ', microtime()); $msectime = (float)sprintf('%.0f', (floatval($msec) + floatval($sec)) * 1000); return $msectime; }
注意:sprintf('%.0f', $num) 是輸出不含小數部分的浮點數
事情還沒結束,我把時間戳改成毫秒等級後,再次更新資料庫資料時,卻提示超出範圍,原來之前我在資料庫中是用int型來儲存time()函數取得的秒等級的時間戳,儲存範圍是夠的,改成毫秒等級的,就得改成BIGINT類型了。
整數型 位元組 範圍(有符號) 範圍( 1位元組 (-128,127) (0,255) 值
SMALLINT 2位元組 (-32 768,32 767)
MEDIUMINT 3位元組 (-8 388 608,8 388 607) (0 ,16 777 215) 215) 大整數值
INT或INTEGER 4位元組 (-2 147 483 648, 4位元組 480 ) 大整數值
BIGINT 8位元組 (-9 233 372 036 854 775 808,9 223 372 036 854 775 807) (0,18 446 744 073 709 551 6115學習,敬請關注
php培訓欄位!
#
以上是php如何取得當前毫秒時間戳的詳細內容。更多資訊請關注PHP中文網其他相關文章!