我使用microtime()
进行非常简单的性能分析,像这样:
$now = microtime();
for (...) {
// do something
echo microtime() - $now;
$now = microtime();
}
现在,echo
语句的输出看起来完全是随机的,我预计会有波动,但是我没有预料到会出现负数。
然而,典型的结果中包含大约三分之一的负数。我在Solaris(PHP 5.0.x)和WinVista(PHP 5.2.3)上确认了这一点。
到底发生了什么?难道我无意中发明了一个时间机器吗?