Иногда приходится детально обращать внимание на скорость выполнения того или иного скрипта (или части скрипта), не ограничиваясь своим беглым намётанным взглядом. Вот тогда то и приходят на помощь возможности PHP по замеру скорости загрузки. Вы наверняка их использовали, да и в целом знаете как это делается. Но на всякий случай, для тех кто не в курсе как это делать, а также для раздела "Важные мелочи", выкладываю простейший код, решающий данный вопрос.
// тело скрипта
echo 'Время выполнения скрипта: '.(microtime(true) - $start).' сек.';
Всё до безумия просто. В первой строке мы создаём переменную с временем начала работы. Оно достигается посредством функции microtime с переданным true – это позволяет получить количество секунд с большим числом знаков после запятой. Время, к слову, в формате Unix.
Далее идёт весь код скрипта, после чего, в третьей строке, мы вычитаем из текущего времени время начало работы скрипта и вуаля – вы имеете время выполнения php скрипта с точностью до едритькакого знака после запятой.
Напоследок, перед выходными, я хочу поделиться с вами одной игрой. Игра некомпьютерная и рассчитана на весёлых пьяных друзей, для которых не чужд интернет. Нужно распечатать, найти игральный кубик, и сесть вечерком с друзьями за бутылочкой чего-нибудь горячительного. Всё таки сейчас дубовенько и в Питере, вроде как, обещают самый дубак на эти выходные. Кароче, не мёрзнете!
Похожие записи:
11/02/2012 at 20:47 Постоянная ссылка Цитировать
Сашенька, спасибо тебе за этот блог! Очень хорошо объясняешь! Люблю тебя и твой блог =*
12/02/2012 at 0:32 Постоянная ссылка Цитировать
Ой, большое спасибо
15/02/2012 at 8:55 Постоянная ссылка Цитировать
Надеюсь, в следующие выходные в Питере будет тепло. Собираюсь приехать
15/02/2012 at 11:57 Постоянная ссылка Цитировать
Довай-довай, скрещу пальцы на хорошую погоду! А ещё надеюсь, что через неделю в Таллине будет хорошая погода, а то с женой там в выходные будем, и было бы обломно шастать там по морозу =)
07/04/2012 at 20:18 Постоянная ссылка Цитировать
За игру спасибо ,
а метод замера – как то, напоминает способ – как найти площади Ленина. Разве что, совсем косячный код отловить, а так нужна аналитика. Когда, насколько, сколько активных запросов и что проседает в коде. Но это скорее анализ работы акселераторов или чего-то подобного. Кстати , есть что сказать по этому поводу?)
09/04/2012 at 11:01 Постоянная ссылка Цитировать
Естественно, этот скрипт не для того, чтобы ловить какие-то конкретные баги, природу которых ты не знаешь. Анализировать можно не только акселераторы, но и чего-то своё собственное, особенно, если поначалу не знаешь всех тонкостей – что быстрее, что медленнее, и пробуешь несколько вариантов (актуально для скриптов, работающих с большим объёмом данных). Плюс возможно собирать аналитику, например, по составлению каких-нибудь sql запросов – как быстрее, так или так, и варьировать при этом объём данных.
В общем, не скажу, что этот скрипт особо полезен при повседневности, но для частных случаев оно самое то.
14/09/2012 at 21:40 Постоянная ссылка Цитировать
А если не хотите точность до едритькакого знака после запятой – то округлите до какого хотите! Вот пример (третья строка скрипта) округления до 4-х знаков после запятой:
echo 'Время выполнения скрипта: '.round(microtime(true) - $start, 4).' сек.';
15/01/2014 at 21:33 Постоянная ссылка Цитировать
Лучше это:
<strong>define('ST_T', microtime());//начало
printf('Страница сгенерирована за %.5f сек.', microtime()-ST_T);//конец</strong>
Тут правдо константы вместо переменных, но всё равно...
15/01/2014 at 21:44 Постоянная ссылка Цитировать
тож хорошо, может кому-то так будет актуальнее, спасибо =)
21/07/2014 at 16:39 Постоянная ссылка Цитировать
делаю шаблон для вордпресс.
для вп есть стандартный способ проверить (но конечно не то, не время выполнения скрипта)
28 запросов 0,454 секунд.
поставил ваш:
Время выполнения скрипта: 9.5367431640625E-7 сек.
почему такая разница в секундах?
простите меня я не очень просто разбираюсь
21/07/2014 at 19:34 Постоянная ссылка Цитировать
одно дело запросы и скорость ответов (если речь о них), а другое – полная обработка скрипта. хотя может и ошибаюсь – надо по факту смотреть в чём там дело.
30/07/2015 at 13:20 Постоянная ссылка Цитировать
Потому что ошибка в статье. Не секунды, а микросекунды.
04/08/2015 at 8:25 Постоянная ссылка Цитировать
2Instincted, время указывается не В микросекундах, а С микросекундами. Так что ошибки нет