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

Узнать стоимость написания работы

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

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

Другие материалы

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

  • Web-программирование. Обработка HTML-форм
  • ... _REQUEST[’Data’] as $key=>$value) echo “$key = $value <br>”; ?> 2.7. Особенности обработки независимых переключателей   Рассмотрим вопрос, который находит частое практическое применение в Web-программировании. Независимый переключатель (checkbox или более коротко — флажок ...

  • SCADA системы
  • ... иной системный сервис. Это может быть и доступ к графическим функциям, функциям работы с базами данных и т.д. Драйверы ввода-вывода. Современные SCADA-системы не ограничивают выбора аппаратуры нижнего уровня, так как предоставляют большой набор драйверов или серверов ввода-вывода и имеют хорошо ...

  • Методика преподавания темы "Программирование в среде Scratch" учащимся начальной школы
  • ... работы: 1)  реализация разработанной методики преподавания темы «Программирование в среде Scratch» учащимся начальной школы; 2)  разработка проекта учащимися начальной школы; 3)  оценка эффективности предложенной методики. Реализация поставленных задач происходила в ГОУ СОШ « ...

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

  • Работа с базой данных MySQL средствами PHP
  • ... До того как послать первый запрос серверу MySQL, необходимо указать, с какой базой данных мы собираемся работать. Для этого предназначена функция mysql_select_db: bool mysql_select_db(string $database_name [,resource $link_identifier]) Она уведомляет PHP, что в дальнейших операциях с соединением $ ...

  • Чат, его установка и настройка
  • ... поменяли, то во втором тоже нужно внести точно такое же исправление. Конфиги: _dima.php и dima_chat.conf. 3. УСТАНОВКА И НАСТРОЙКА ЧАТА ПОД LINUX/FreeBSD Рассмотрим порядок установки программы CHAT.PHP.SPB.RU на Интернет-сервер провайдера/хостера/организации. 90% успеха - точное исполнение ...

  • Автоматизированная система учета оборота товаров в телекоммуникационной фирме
  • ... руб.час. Зная себестоимость машино-часа работы ЭВМ, можно определить затраты на написание автоматизированной системы и ее отладку по формуле: Знп-о=С*t, Где t = 336 час – время написания системы и ее отладки. Знп-о=115,75*336=38892 руб. Итоговая калькуляция сметной стоимости работ приведена ...

  • Исследование использования программ дистанционного обучения для подготовки учебно-методической документации
  • ... Рисунок 4.1 - Схема размещения светильников в аудитории № 209. Заключение В работе проведено исследование использования программ дистанционного обучения для подготовки учебно-методической документации, описаны их положительные стороны и выявлены основные проблемы. В результате проведенного ...

  • Обработка ошибок в коде программ РНР
  • ... применением исключений перехват и обработка ошибок, наиболее слабая часть в большинстве программных систем, значительно упрощается. Концепция исключений базируется на общей идее объектно-ориентированного программирования: данные должны обрабатываться в том участке программы, который имеет максимум ...

  • Установка и настройка локального web-сервера Apache, PHP, MySQL под операционную систему Windows
  • ... языке: Если открылась начальная страница, значит Apache установлен правильно. ● Перейдите в окно Web-сервера Apache с помощью Панели задач операционной системы Windows и завершите работу сервера с помощью кнопки [X] в правом верхнем углу окна. 1.3. Установка PHP Загрузить дистрибутивов PHP ...

  • Программируем на РНР
  • ... индексу массива. Таким образом, у нас всегда есть возможность знать, сколько элементов присутствует в данном массиве. Что еще можно узнать о массивах в РНР? Кое-что можно… Например, функция current возвращает текущий элемент массива. Каждая переменная-массив имеет внутренний указатель (это не индекс ...

  • MYSQL server
  • ... время, будут закрыты немедленно, а управление потоками будет закрыто, когда они достигнут точек завершения, определенных сервером. Клиенты получат сообщение об ошибке 'mysql server has gone away'. status Вывести короткое сообщение о статусе сервера. mysqld Серверная часть пакета ...

Каталог учебных материалов

Свежие работы в разделе

Наша кнопка

Разместить ссылку на наш сайт можно воспользовавшись следующим кодом:

Контакты

Если у вас возникли какие либо вопросы, обращайтесь на email администратора: admin@kazreferat.info