对于非常简单的分析,我使用microtime()
这样:
$now = microtime();
for (...) {
// do something
echo microtime() - $now;
$now = microtime();
}
现在,echo
行的输出似乎是完全随机的,也就是说,我预计会出现波动,但我没有期望负数出现
然而,典型结果包含〜1/3的负数。我在Solaris(PHP 5.0.x)和WinVista(PHP 5.2.3)上证实了这一点。
这到底是怎么回事?我是否意外地发明了一台时间机器?
答案 0 :(得分:67)
如果要对microtime返回的内容进行操作,则必须将“get as float”参数设置为true(默认为false)。
http://www.php.net/manual/en/function.microtime.php
$now = microtime(true);
for (...) {
// do something
echo microtime(true) - $now;
$now = microtime(true);
}