РефератыИнформатика, программированиеСчСчитаем время выполнения скрипта

Считаем время выполнения скрипта

Предводителев Сергей


Вы наверняка замечали на некоторых сайтах внизу страницы надпись, что мол скрипт выполнен или страница создана за столько-то секунд. И сейчас мы сделаем это средствами PHP.


Для начала опишу функцию, с помощью которой мы и будем измерять время, - microtime. Эта функция возвращает текущий UNIX timestamp с микросекундами. Вот описание этой функции из документации к PHP:




string microtime (void)


Возвращает строку "msec sec", где sec это текущее время, измеренное в секундах Unix Epoch (начиная с 0:00:00 January 1, 1970 GMT), а msec это микросекунды. Эта функция доступна только в ОС, поддерживающих системный вызов gettimeofday().


Обе части этой строки возвращаются в единицах секунд.



Эта функция возвращает значение типа string, а нам нужен тип float. Для преобразования напишем небольшую функцию:


function getmicrotime(){


list($usec, $sec) = explode(" ",microtime());


return ((float)$usec + (float)$sec);


}


Эта функция выделяет из строки типа "msec sec" секунды и микросекунды, складывает их как float и полученное значение возвращает.


Теперь в самом начале скрипта зап

оминаем текущее время:


$TIME_START = getmicrotime();


И в самом конце скрипта смотрим время и находим разность начального и текущего времени:


$TIME_END = getmicrotime();


$TIME_SCRIPT = $TIME_END - $TIME_START;


Всё… в переменной $TIME_SCRIPT содержится время выполнения нашего скрипта. Но при выводе это переменной мы получим примерно следующее:


0.31106710434


Чтобы красиво вывести это число воспользуемся функцией number_format, второй параметр которой обозначает количество цифр после запятой:


number_format($TIME_SCRIPT,3,'.','');


И теперь мы получаем красивый вывод:


0.254


Вот что в итоге получилось у меня:


$TIME_START = getmicrotime();


function getmicrotime(){


list($usec, $sec) = explode(" ",microtime());


return ((float)$usec + (float)$sec);


}





<?


$TIME_END = getmicrotime();


$TIME_SCRIPT = $TIME_END - $TIME_START;


?>


<div align="center"><b>.::</b>


Скриптвыполненза <?=number_format($TIME_SCRIPT,3,'.','');?> сек.


<b>::.</b>


</div>

Сохранить в соц. сетях:
Обсуждение:
comments powered by Disqus

Название реферата: Считаем время выполнения скрипта

Слов:288
Символов:2753
Размер:5.38 Кб.