Может ли кто-нибудь сказать мне, почему, когда я запускал сценарий с приведенным ниже содержимым, а затем останавливал его через 5 секунд, мне нужно разделить прошедшее время на 2, чтобы получить правильное время выполнения сценария ?
ignore_user_abort(true); set_time_limit(0);
$begin_time = microtime(true);
$elapsed_time = 0;
while(!connection_aborted()) {
echo ' ';
flush();
usleep(1000000);
}
$elapsed_time = microtime(true) - $begin_time;
$timer_seconds = $elapsed_time; //10 seconds
$timer_seconds = $elapsed_time / 2; //5 seconds
/*I am writing to a DB - but you can use this to test */
$fp = fopen('times.txt', 'w');
fwrite($fp, 'Time Elapsed: '.$timer_seconds);
fclose($fp);
Не стесняйтесь попробовать код, поскольку он озадачил меня, почему $ elapsed_time
нужно делить на два. Может быть, я что-то неправильно понял?
Всем спасибо за любую помощь
Я обновил код, чтобы каждый мог попробовать это, и он будет записывать в текстовый файл для просмотра вывода.