php時間相減為負數原因解析
為計算程序運行耗時,特意在程序開始和結尾,打印系統時間,最后得出時間差;
示例程序:
實際運行中,卻發現偶爾打印的時間差為負數;
問題原因:
microtime()返回的字符串格式是: "0.毫秒 秒",而microtime(true)返回的是"秒.毫秒";
修復后的正確程序:
為得到單位為毫秒的耗時,再次優化程序,如下:
示例程序:
$startTime = microTime();
$endTime = microTime();
$costTime = $endTime - $startTime;
echo $costTime;
$endTime = microTime();
$costTime = $endTime - $startTime;
echo $costTime;
實際運行中,卻發現偶爾打印的時間差為負數;
問題原因:
microtime()返回的字符串格式是: "0.毫秒 秒",而microtime(true)返回的是"秒.毫秒";
修復后的正確程序:
$startTime = microTime();
$endTime = microTime();
$costTime = $endTime - $startTime;
echo $costTime;
$endTime = microTime();
$costTime = $endTime - $startTime;
echo $costTime;
為得到單位為毫秒的耗時,再次優化程序,如下:
$startTime = microTime(true) * 1000;
$endTime = microTime(true) * 1000;
$costTime = $endTime - $startTime;
echo $costTime;
$endTime = microTime(true) * 1000;
$costTime = $endTime - $startTime;
echo $costTime;
posted on 2017-08-25 14:04 小一敗涂地 閱讀(366) 評論(0) 編輯 收藏 所屬分類: php語言相關