PHP, представляющий с микровременем (): Отрицательное время?

Для очень простого профилирования я использую microtime() как это:

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

Теперь, вывод echo строка кажется абсолютно случайной, то есть, я ожидал колебания, но я не ожидал разоблачение отрицательных чисел.

Однако типичный результат содержит ~ 1/3 отрицательные числа. Я подтвердил это на Солярисе (PHP 5.0.x) и WinVista (PHP 5.2.3).

Какого черта продолжается здесь? Я изобрел случайно машину времени?

42
задан Boldewyn 6 February 2013 в 10:46
поделиться

1 ответ

Если вы хотите выполнять операции с тем, что возвращает 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);
}
68
ответ дан 26 November 2019 в 23:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: