Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Esta é uma classe pra calcular o tempo de execução de um trecho do script. Você define o momento em que quer iniciar/parar a contagem, depois pode retornar o tempo de duração no formato float ou numa string formatada com os mesmos parâmetros da função number_format().
[]'s!
Exemplo
<?php
$Timer = new Timer();
// trecho do script que será avaliado
// mesmos parâmetros da função number_format, sem passar o número que será formatado
echo $Timer->getFormatedElapsedTime(2, ",", ".");
?>
Class Timer
<?php
/**
* Timer
*
* Carlos Reche (carlosreche@yahoo.com)
* Feb 14, 2006
*/
class Timer {
var $start = 0,
$stop = 0;
function Timer($autoStart = true) {
if ($autoStart) {
$this->start();
}
}
function getMicrotime() {
$t = microtime();
return ((float)substr($t, 0, ($i = strpos($t, " "))) + (float)substr($t, ++$i));
}
function start() {
$this->stop = 0;
return ($this->start = $this->getMicrotime());
}
function stop() {
return ($this->stop = $this->getMicrotime());
}
function getElapsedTime($round = 0) {
$time = $this->start;
if ($this->start != 0) {
$time = (($this->stop != 0) ? $this->stop : $this->getMicrotime()) - $time;
if ($round > 0) {
$time = round($time, $round);
}
}
return $time;
}
function getFormatedElapsedTime($decimalLength = 4, $decimalPoint = ".", $thousandsSep = ",", $round = true) {
$time = $this->getElapsedTime(($round ? $decimalLength : 0));
return number_format($time, $decimalLength, $decimalPoint, $thousandsSep);
}
}
?>Carregando comentários...