很多时候我们需要计算PHP脚本的执行时间,来获知脚本的效率等问题。比如有一个一大段的PHP脚本,我们就需要一个分段获取脚本执行时间的方法。先介绍要用到的函数:
// 计时函数 function runtime($mode = 0) { static $t; if(!$mode) { $t = microtime(); return; } $t1 = microtime(); list($m0,$s0) = split(" ",$t); list($m1,$s1) = split(" ",$t1); return sprintf("%.3f ms",($s1+$m1-$s0-$m0)*1000); } runtime(); //计时开始 /*// 要计算的PHP脚本$result = 0;for($i = 0; $i < 100; $i++) { $result += $i; } echo $result; */ echo runtime(1); //www.onesheng.cn计时结束并输出计时结果 runtime(); //计时开始 /* // 要计算的PHP脚本 $result = 0; for($i = 0; $i < 100; $i++) { $result += $i; } echo $result; */ echo runtime(2); //计时结束并输出计时结果
microtime() 函数
microtime() 函数返回当前 Unix 时间戳和微秒数。
microtime(get_as_float),参数get_as_float,如果给出了 get_as_float 参数并且其值等价于 TRUE,该函数将返回一个浮点数。
如果调用时不带可选参数,本函数以 "msec sec" 的格式返回一个字符串,其中 sec 是自 Unix 纪元(0:00:00 January 1, 1970 GMT)起到现在的秒数,msec 是微秒部分。字符串的两部分都是以秒为单位返回的。
程序输出:
1 | 0.25139300 1138197510 |
现在就可以实现分段计算PHP脚本执行的时间了。