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

2202
знака
1
таблица
0
изображений

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

Вы наверняка замечали на некоторых сайтах внизу страницы надпись, что мол скрипт выполнен или страница создана за столько-то секунд. И сейчас мы сделаем это средствами 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>

Список литературы

Для подготовки данной работы были использованы материалы с сайта http://coderpro.fatal.ru/


Информация о работе «Считаем время выполнения скрипта»
Раздел: Информатика, программирование
Количество знаков с пробелами: 2202
Количество таблиц: 1
Количество изображений: 0

Похожие работы

Скачать
2237
0
0

... (" ",$mtime); //Составляем одно число из секунд и миллисекунд $mtime = $mtime[1] + $mtime[0]; //Записываем стартовое время в переменную $tstart = $mtime; Теперь в самом конце, после кода, время выполнения которого нам надо засечь, пишем: //Делаем все то же самое, чтобы получить текущее время $mtime = microtime(); $mtime = explode(" ",$mtime); $mtime = $mtime[1] + $mtime[0]; //Записываем время ...

Скачать
374863
43
0

... интерфеса и интерфейса локольной сети ·     Предложение о выборе вариантов загрузки При этом возможен вариант запгрузки как с SCSI устройства (диск, CDROM, лента, …) так и через локальную сеть. Загрузочный диск должен быть предварительно сконфигурирован. Так как обьем Boot ROM не может быть большим, в его задачи входит загрузка вторичного загрузчика ...

Скачать
98821
32
0

... ПЭВМ типа IBM PC различных конфигураций. Станции управления предназначены для отображения хода технологического процесса и оперативного управления. Эти задачи и призваны решать SCADA - системы. SCADА - это специализированное программное обеспечение, ориентированное на обеспечение интерфейса между диспетчером и системой управления, а также коммуникацию с внешним миром. Спектр ...

Скачать
89890
1
21

... «Программирование в среде Scratch» в начальной школе 3.1 Общие вопросы экспериментальной работы Целью проведенной экспериментальной работы была проверка методики преподавания темы «Программирование в среде Scratch» учащимся начальной школы. Задачи экспериментальной работы: 1)  реализация разработанной методики преподавания темы «Программирование в среде Scratch» учащимся начальной школы; ...

0 комментариев


Наверх