PHP получить точное время выполнения конкретной строки - PullRequest
2 голосов
/ 28 марта 2011

Я пытаюсь выполнить простой тест для сценария, который у меня есть. Сначала я попытался просто добавить что-то вроде:

echo 'After Checklist: '. date('h:i:s:u A') ."<br />";

но он просто печатает одно и то же время много раз - только когда запускается сценарий включения, он возвращает другое время. Есть какой-либо способ сделать это? Или что-то похожее - я просто хочу увидеть узкое место, чтобы повысить производительность.

Ответы [ 2 ]

5 голосов
/ 28 марта 2011

Вы хотите использовать функцию microtime , которая будет возвращать текущую метку времени Unix с микросекундами.

Отсюда вы можете сделать простое вычитание из времени начала и окончания, чтобы получить желаемые результаты. Однако хитрость заключается в том, чтобы передать в функцию «true», чтобы она возвращала значение с плавающей точкой, а не строку.

Пример, опубликованный на php.net:

<?php
$time_start = microtime(true);

// Sleep for a while
usleep(100);

$time_end = microtime(true);
$time = $time_end - $time_start;

echo "Did nothing in $time seconds\n";
?>
2 голосов
/ 28 марта 2011

Я думаю, вам нужно микротайм: http://php.net/manual/en/function.microtime.php

...