Скрипт. Время генерации странички (нужно довести до ума)

12
M7
На сайте с 14.04.2007
Offline
98
2290

Здравствуйте.

Пытаюсь засечь время генерации странички на сайте.

Нашел соответствующий скрипит, поставил в итоге получаю следующие (страница сгенерирована за 1239639272.129888 секунд). :)

Этот код вверху странички:


<?php
$start_time = microtime();
$start_array = explode(" ",$start_time);
$start_time = $start_array[1] + $start_array[0];
?>

Этот код внизу странички:


<?php
$end_time = microtime();
$end_array = explode(" ",$end_time);
$end_time = $end_array[1] + $end_array[0];
$time = $end_time - $start_time;

printf("Страница сгенерирована за %f секунд",$time);
?>

Что подправить, чтоб время генерации отображалось в нормальном виде (0,12345)?

[Удален]
#1
<?php
$start_time = microtime(true);
?>
<?php
printf("Страница сгенерирована за %f секунд",microtime(true) - $start_time);
?>

это для пхп5. под пхп4 не пишу, там обычно говнокодят.

M7
На сайте с 14.04.2007
Offline
98
#2
bearman:
это для пхп5. под пхп4 не пишу, там обычно говнокодят.

Спасибо bearman. Все равно время генерации пишет 1239641263.109341 :(

[Удален]
#3

$start_time у тебя видимо неопределена в конце скрипта.

попробуй вконце дописать перед echo ..

global $start_time;

[Удален]
#4

вот работающий вариант: http://wmtoyou.ru/gener.php

соотв.код:

в начале

<?php

$start_time = microtime(true);
?>

в конце

<?php

$end_time = microtime(true);
echo " " . ($end_time - $start_time) . ' сек.';
?>
Anarchist
На сайте с 23.07.2008
Offline
185
#5
wmtopart:
вот работающий вариант: http://wmtoyou.ru/gener.php

ну и жесть... зачем я только кликал на эту ссылку...

P
На сайте с 04.08.2008
Offline
15
#6

Для PHP 5 следующий скрипт

1. <?
2. // Начало скрипта
3.
4. $tstart=microtime(1); // Засекаем начальное время
5.
6. ...
7. ...
8. // Основной код скрипта
9. ...
10. ...
11.
12. $tend=microtime(1); // Засекаем конечное время
13. // Округляем до двух знаков после запятой
14. $totaltime=round(($tend-$tstart),2);
15. // Результат на экран
16. echo "Время генерации страницы: ".$totaltime." сек.";
17.
18. // Конец скрипта
19. ?>

kil
На сайте с 03.04.2006
Offline
84
kil
#7
peacedate:
Для PHP 5 следующий скрипт

Всё же лучше округлять не так сильно, т.к. часто скрипты работают быстрее :)

$totaltime=round(($tend-$tstart),5);
HraKK
На сайте с 02.03.2009
Offline
128
#8

Я в шоке. моск схаван)))

13. // Округляем до двух знаков после запятой
14. $totaltime=round(($tend-$tstart),2);

Шедевр, мои странички открываются вообще-то 0.02-0.00х времени что мне сделать?)

я гарант (/ru/forum/493343) уже не оказываю данные услуги, извините.
infocean
На сайте с 22.10.2006
Offline
34
#9

Пользуюсь вот таким счётчиком:

В начало документа:

define("START_TIME", microtime(true));

В конец документа:

printf("<!-- Время выполнения скрипта: %.5f с -->", microtime(true)-START_TIME);

И всё!

Свойства счётчика:

Работает и на PHP4/5 )))

Округляет время до 5 чисел после знака, т.е. результат выглядит вот так: 0.00369 с .

Записывает результат в виде комментария в html-код:

<!-- Время выполнения скрипта: 0.00369 с -->
.

Если нужно округлять до 2 чисел после запятой, то в последней строке меняем число 5 на 2 и всё.

HraKK:

Шедевр, мои странички открываются вообще-то 0.02-0.00х времени что мне сделать?)

Ни чего вам не надо делать, у вас отличная скорость генерации страничек.

T.R.O.N
На сайте с 18.05.2004
Offline
314
#10

Я с пхп стараюсь не общаться, но хочу спросить, как работают функции типа microtime, ведь, как правило, мало того что все это работает под апачем, так еще и под виртуальным сервером. Каким образом такая конструкция получает информацию о реальном времени. Ведь, по сути, там может быть только пользовательское время.

На сей вопрос натолкнили приведенные примеры временных параметров. Вот цыфры внуз этого форума, на мой взгляд - похожи на реальные (~0.1c) - а вот 0.00369 с бредовые (имхо конечно) с точки зрения реальности значений

PS У перла, аналогичная функция, показывает разные значения под реальным и виртуальным сервером

От воздержания пока никто не умер. Хотя никто и не родился! Prototype.js был написан теми, кто не знает JavaScript, для тех, кто не знает JavaScript (Richard Cornford)
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий