php使用microtime(true)查看代碼執行時間


<?PHP
$t1=microtime(true);
for( $i=1;$i<=1000;$i++){
    echo $i."*";
}
echo "<br>";
$t2=microtime(true);
echo $t1."<br>";
echo $t2."<br>";
echo "消耗時間:".round($t2-$t1,3);

輸出:

1543284899.817
1543284899.818
消耗時間:0.001

 

microtime() 函數返回當前 Unix 時間戳和微秒數。

      如果帶個 true 參數, 返回的將是一個浮點類型

round() 取出小數點后 3 位

=======================================================================

如何計算一段php程序代碼的執行消耗時間?

對於系統時間,可能很多同學對php的time()函數並不陌生,可惜time()函數只返回自從 Unix 紀元(格林威治時間 1970 年 1 月 1 日 00:00:00)到當前時間的秒數.
沒錯,是秒.我們一段php程序代碼執行耗時可能並不超過一秒,所以time()並不適用.php提供了一個更為精確的時間函數microtime():
microtime — 返回當前 Unix 時間戳和微秒數.

格式: mixed microtime ([ bool $get_as_float ] )

函數以 “msec sec” 的格式返回一個字符串,sec 是自 Unix 紀元(0:00:00 January 1, 1970 GMT)起到現在的秒數,msec 是微秒部分。
如果輸入參數為true,microtime() 將返回一個浮點數。

例如:echo microtime(); 會返回:0.08845800 1376983061。

echo microtime(true);則返回:1376983061.08845800

在dedecms和康盛的UCenter代碼中使用了microtime()然后字符串分隔

在thinkphp3.2框架代碼中使用了microtime(true);

好了,然后的事情很簡單,為了免於對返回的結果做復雜的字符串轉換,我們設定microtime()輸入參數為true,使得其返回的結果為浮點數。
然后在程序開始和結束分別計算一次,兩次結果相減便是程序執行的時間。(PHP手冊里有一句話:永遠不要比較兩個浮點數是否相等。 )
最后使用number_format格式化浮點數。此方法僅供測試,結果不一定精確。

原文:https://blog.csdn.net/eflyq/article/details/19130141


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM