|
|
|
| Видел вроде недавно пост с этим скриптом, и теперь никак не могу его найти :(
Интересно посмотреть, за сколько страничка собирается.
Если у кого-то есть, скинте плиз! | |
|
|
|
|
|
|
|
для: Sasha
(15.10.2005 в 22:28)
| | <?php
//Это вставляем в какой нить места где будет всегда использоватся на сайте.... ну в конфиг или в файл там где функции хранишь...
class microTimer {
function start() {
global $starttime;
$mtime = microtime ();
$mtime = explode (' ', $mtime);
$mtime = $mtime[1] + $mtime[0];
$starttime = $mtime;
}
function stop() {
global $starttime;
$mtime = microtime ();
$mtime = explode (' ', $mtime);
$mtime = $mtime[1] + $mtime[0];
$endtime = $mtime;
$totaltime = round (($endtime - $starttime), 5);
return $totaltime;
}
}
?>
<?php
//Вверху сайта пишем:
$Timer = new microTimer;
$Timer->start();
?>
<?php
//Внизу сайта что-то вроде
echo "Page generation ".$Timer->stop()." sek.";
?> | |
|
|
|
|
|
|
|
для: fabik
(15.10.2005 в 22:59)
| | А зачем для этого тормознутые классы использовать? | |
|
|
|
|
|
|
|
для: Atom
(15.10.2005 в 23:34)
| | Типа модно! :) | |
|
|
|
|
|
|
|
для: Евгений Петров
(16.10.2005 в 00:03)
| | код в несколько строчек:
<?
// стартуем тайемер ( в самом начале страницы):
function get_microtime () { list ($usec, $sec) = explode (" ", microtime ()); return $usec + $sec; }
define ("MICROTIME_START", get_microtime ());
// Функцию get_microtime_end() можно расположить в любом месте,
//например в файле с вашими функциями
function get_microtime_end() {
defined ("MICROTIME_START")? $return = round ((get_microtime () - MICROTIME_START), 3): $return = "";
return $return;
}
// вывод рузультата:
echo get_microtime_end();
|
| |
|
|
|
|
автор: _isset (16.10.2005 в 05:21) |
|
|
для: localGhost
(16.10.2005 в 01:06)
| | И пример для PHP5:
<?php
define ("RUNTIME_START", microtime(true));
/* код */
// вывод результата:
echo RUNTIME_START-microtime(true);
?>
|
| |
|
|
|
|
|
|
|
для: Atom
(15.10.2005 в 23:34)
| | просто пример. а чтобы ты знал. с классом результат будет куда тачнее как мне кажется чем без его по примеру localGhost не веришь убедись сам. создай вывод генерации страницы по моему примеру и localGhost и посмотри результаты. как посмотришь скажи результаты сюда ") | |
|
|
|
|
автор: _isset (16.10.2005 в 05:18) |
|
|
для: fabik
(16.10.2005 в 03:52)
| | Результат будет один и тот же | |
|
|
|
|
автор: _isset (16.10.2005 в 05:18) |
|
|
для: Atom
(15.10.2005 в 23:34)
| | Классы вовсе не тормознутые и даже быстрее обычных функций, тем более в PHP5. И попрошу не называть их больше так :-) | |
|
|
|
|
автор: _isset (16.10.2005 в 05:26) |
|
|
для: fabik
(15.10.2005 в 22:59)
| | Раз уж используется ООП, то надо его использовать полноцено (и зачем вводить столько переменных?):
<?php
//Это вставляем в какой нить места где будет всегда использоватся на сайте.... ну в конфиг или в файл там где функции хранишь...
class microTimer {
var $starttime;
function start() {
$mtime = explode (' ', microtime());
$this->starttime = $mtime[1] + $mtime[0];
}
function stop() {
$mtime = explode (' ', microtime());
$mtime = $mtime[1] + $mtime[0];
return round (($mtime - $this->starttime), 5);
}
}
?>
<?php
//Вверху сайта пишем:
$Timer = new microTimer;
$Timer->start();
?>
<?php
//Внизу сайта что-то вроде
echo "Page generation ".$Timer->stop()." sek.";
?>
|
| |
|
|
|
|
автор: _isset (16.10.2005 в 05:30) |
|
|
для: _isset
(16.10.2005 в 05:26)
| | Я бы даже переписал класс так:
<?php
//Это вставляем в какой нить места где будет всегда использоватся на сайте.... ну в конфиг или в файл там где функции хранишь...
class microTimer {
var $starttime;
function start() {
$this->starttime = $this->current();
}
function stop() {
return round (($this->current() - $this->starttime), 5);
}
function current() {
$mtime = explode (' ', microtime());
$mtime = $mtime[1] + $mtime[0];
return $mtime;
}
}
?>
|
| |
|
|
|
|
|
|
|
для: _isset
(16.10.2005 в 05:30)
| | Прямо в точку!
А как вы думаете, до какого времени генерация страницы нормально, а когда уже оч. много? | |
|
|
|
|
|
|
|
для: Sasha
(16.10.2005 в 23:04)
| | Всё завсит от того, что делает скрипт. К примеру наша кмс генерирует страницу за 0.01 | |
|
|
|
|
|
|
|
для: JIEXA
(16.10.2005 в 23:16)
| | Наш сервер 10 Мб файл загружает несколько минут, разбирает его при помощи регулярных выражений за 40 секунд. | |
|
|
|
|
|
|
|
для: cheops
(17.10.2005 в 01:13)
| | а можно поподробнеео примере для пхп5... в пятом функция microtime() работает несколько подругму? в 4 такое работатеь не будет? а то мне понравилось))))
Добавленно позже:
цитирую: Если передан аргумент get_as_float, равный TRUE, функция microtime() возвращает действительное число. В этом? | |
|
|
|
|
|
|
|
для: localGhost
(17.10.2005 в 04:26)
| | И еще, не успел тогда добавить.... ИМХО использование классов здесь не очень кстати. Если выше сравнивалось что будет быстрее работать в виде класса или в виде функции, но ведь на подключение файла с классом и на его объявление уж тогда тоже время уйдет..... мне кажеться самый оптимальный вариант это тот который предложил _isset - всего две строчки и ничего лишнего | |
|
|
|
|
|
|
|
для: localGhost
(18.10.2005 в 07:09)
| | Да уж. А у меня время отрицательное получилось :))
-0.00095987319946289 | |
|
|
|
|
|
|
|
для: Sasha
(18.10.2005 в 10:00)
| | да))))) ошибочка небольшая там))
<?php
define ("RUNTIME_START", microtime(true));
/* код */
// вывод результата:
echo microtime(true) - RUNTIME_START;
?>
|
| |
|
|
|