28 Ноября 2007
Этот класс считает время между метками, очень удобно для нахождения "толстых" мест в скрипте и в последущем равноверном распределении груза по CMS.
Возможно пригодится кому нибудь.

<?php
/* ==================================================  == ##
## COPYRIGHTS © DANNEO PHP TEAM ##
## ==================================================  == ##
## PRODUCT : TIMER CLASS ##
## LICENSE : GNU 2(General Public License v.2)           ##
## TECHNOLOGIES : PHP                                    ##
## WWW : <span class="inv"><![CDATA[<noindex>]]></span><a href="/redirect.php?url=http://www.danneo.comwww" rel="nofollow" onclick="wo(this.href); return false;">www.danneo.com</a><span class="inv"><![CDATA[</noindex>]]></span> | <span class="inv"><![CDATA[<noindex>]]></span><a href="/redirect.php?url=http://danneo.ruwww" rel="nofollow" onclick="wo(this.href); return false;">danneo.ru</a><span class="inv"><![CDATA[</noindex>]]></span>                  ##
## ==================================================  == */

/* Пример использования DANNEO.TIMER.CLASS
## <?php
## require("danneo.timer.php"); // Подключить класс
## $tr = new timer(); // Создать объект = $tr
## // Старт где danneo.file.php метка для отрезка
## // а include тип
## $tr->start('danneo.file.php','include');
## // Открыть тестовый файл
## include('danneo.file.php');
## // Конец обсчёта по метке danneo.file.php
## $tr->restart('danneo.file.php');
## // Вывод результата
## $tr->out();
## ?>
## Пример использования DANNEO.TIMER.CLASS */

/* ==================================================  == ##
## START CLASS TIMER ##
## ==================================================  == */

class timer{
/* ==================================================  == ##
## VARS CLASS TIMER                                      ##
## ==================================================  == */

var $timers=array();
var $total=0;
/* ==================================================  == ##
## TIMER FUNCTION | CLASS TIMER                          ##
## ==================================================  == */

function timer(){}
/* ==================================================  == ##
## START FUNCTION | CLASS TIMER                          ##
## ==================================================  == */

function start($name='standart',$type=false){
$posit = explode(' ',microtime());
$render = $posit[1].substr($posit[0],1);
if($type==true) $this->timers["$name"]['type']=$type;
$this->timers["$name"]['start']=$render;
}
/* ==================================================  == ##
## RESTART FUNCTION | CLASS TIMER                        ##
## ==================================================  == */

function restart($name='standart'){
$posit = explode(' ',microtime());
$render = $posit[1].substr($posit[0],1);
return $this->timers["$name"]['time'] = bcsub($render,$this->timers["$name"]['start'],6);
}
/* ==================================================  == ##
## RESTART FUNCTION | CLASS TIMER                        ##
## ==================================================  == */

function out(){
if(!empty($this->timers)){
print('<div style="border:1px solid #cccccc; font-size:11px; font-family:tahoma,verdana,arial; background-color:#f3f3f3; color:#444444; margin:10px; padding:10px; overflow:hidden;">');
foreach($this->timers as $key => $value){
if(isset($value['time']) && isset($key)){
print (($value['type']!=false) ? $value['type'].' : ' : '').'<b>'.$key.'</b> <font color=#A73C3C><b>'.$value['time'].'</b></font><br />';
$this->total+=$value['time'];
}
}
print('Total : <font color=#A73C3C><b>'.$this->total.'</b></font><br />');
print('</div>');
}
}
/* ==================================================  == ##
## END CLASS TIMER                                       ##
## ==================================================  == */

}
?>
| 2486Просмотров  Оценка  2 | Рейтинг  4 | Голосов  2
  1   2   3   4   5

Вы не авторизованы!
Гости не могут добавлять комментарии.
Вход    

Donation Плитка для кухни Impronta. Impronta italgraniti le rable.