对于一个非常简单的分析,我使用microtime()像这样:

$now = microtime();
for (...) {
    // do something
    echo microtime() - $now;
    $now = microtime();
}

现在,echo行的输出似乎完全是随机的,也就是说,我期望波动,但是我并不期望出现负数。

但是,典型结果包含〜1/3负数。我在Solaris(PHP 5.0.x)和WinVista(PHP 5.2.3)上确认了这一点。

这里到底发生了什么?我是否偶然发明了一种时光机?

最佳答案

如果要对Microtime返回的内容进行操作,则必须将“以浮点数形式获取”参数设置为true(默认为false)。

http://www.php.net/manual/en/function.microtime.php

$now = microtime(true);
for (...) {
    // do something
    echo microtime(true) - $now;
    $now = microtime(true);
}

关于php - 使用microtime(): Negative time?进行PHP分析,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2607150/

10-10 16:37