當有下true參數時:
echo microtime(true);
//輸出結果:
1429260694.1102
而沒有下參數時:
echo microtime();
//輸出結果:
0.95640100 1429260781
兩個的差別在於有加true參數時,會直接輸出浮點數,另外一個則是輸出「微秒 秒」兩組數字,需注意的是,microtime(bool get_as_float)參數,是在PHP 5.0以後的版本才填加,所以PHP 5.0之前的版本,不管有沒有加參數,都是以沒有下參數的「微秒 秒」格式輸出。
所以輸出的格式若是「微秒 秒」時,拿來計算執行時間,時間就會變成負數,所以官方有提供計算時間的範例,個人也建議使用此方式,好處在於不用注意PHP版本問題。
<?php /** * Simple function to replicate PHP 5 behaviour */ function microtime_float() { list($usec, $sec) = explode(" ", microtime()); return ((float)$usec + (float)$sec); 或 return array_sum(explode(" ", microtime())); } $time_start = microtime_float(); // Sleep for a while usleep(100); $time_end = microtime_float(); $time = $time_end - $time_start; echo "Did nothing in $time seconds\n"; ?>