Время выполнения PHP скрипта.

1 Комментарий

Все видели на сайтах такую срочку «Страница сгенерирована за — 0.хх секунд».
Хотите такое же себе?
Да запросто, нужен только Notepad++ или в чем вы там пишете не важно.(только не Word :)

Сначала принцип:

  1. Засекаем время старта скрипта
  2. Засекаем время окончания работы скрипта
  3. Теперь вычитаем из второго первое и получаем разницу
  4. Выводим то, что получилось

Вроде нетрудно и понятно.

Ну а теперь собственно сам скрипт:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 //получаем секунды и милисекунды
$start_time = microtime();
//укладываем их в массив
$start_arr = explode(" ",$start_time));
//теперь каждый элемент массива в отдельную переменную
list($msec,$sec) = &start_arr;
//и получаем то что нам нужно(время старта)
$start=$sec+$msec;

//тут код вашей страницы хоть просто написанный,
//хоть инклудом, например: include ('myscript.php');

// Теперь ещё раз определяем текущее время такимже образом и
// присваиваем его переменной $stop.
//Получаем секунды и милисикунды.
$stop_time = microtime();
//укладываем их в массив
$stop_arr = explode(" ",$stop_time));
//теперь каждый элемент массива в отдельную переменную
list($msec,$sec) = $stop_arr;
//Получаем время стопа
$stop=$sec+$msec;

// Отнимаем время начала выполнения скрипта от конечного времени.
$script_time = $stop-$start;
// Приводим время потраченное на выполнение скрипта
// в удобоворимый вид (4 знака после запятой).
$script_time = round($script_time,4);
// Ну и наконец выводим время потраченое на выполнение скрипта
echo "Скрипт выполнен за ".$script_time." сек.";
//вот и все

Теперь я напишу тоже самое только немного короче и без коментариев:

Эту часть размещяем в самом начале вашей страницы или скрипта:

1
2
list($msec,$sec)=explode(" ",microtime());
$start=$sec+$msec;

А эту часть в самом конце:

1
2
3
list($msec,$sec)=explode(" ",microtime());
$stop=$sec+$msec;
echo "Скрипт выполнен за ".round($stop-$start,4)." сек.";

Вот и все.

10
Нояб
2009

1 Комментарий к статье:
“Время выполнения PHP скрипта. ”

  1. А реально ограничить число потребляемых ресурсов процессора? У меня скрипт формирует PDF, а на хостинге лимит в 5 секунд при нагрузке проца более 60%. Вот хочу растянуть время выполнения скрипта, чтоб было не более 10%=) Или придется разбираться с VPS?=)

Оставить комментарий