Zamanlayıcı Sınıfı ile Sayfa Yüklenme Zamanı

PHP
41 lines
<?php
class Zamanlayici {
var $baslat = 0;
var $durdur = 0;
var $gecenzaman = 0;
function Zamanlayici( $baslat = true ) {
if ( $baslat )
$this->baslat();
}
function baslat() {
$this->baslat = $this->_zamanal();
}
function durdur() {
$this->durdur = $this->_zamanal();
$this->gecenzaman = $this->_hesapla();
}
function gecenzaman() {
if (!isset($gecenzaman))
$this->durdur();
return $this->gecenzaman;
}
function reset() {
$this->baslat = 0;
$this->durdur = 0;
$this->gecenzaman = 0;
}
function _zamanal() {
$mikrozaman = microtime();
$mikrozaman = explode( " ", $mikrozaman );
return $mikrozaman[1] + $mikrozaman[0];
}
function _hesapla() {
return $this->durdur - $this->baslat;
}
}
$zamanlayici = new Zamanlayici();
?>
<?php echo $zamanlayici->gecenzaman();?> saniye<br>
<?php echo $zamanlayici->gecenzaman();?> saniye<br>
<?php echo $zamanlayici->gecenzaman();?> saniye<br>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Çıktısı

PHP
3 lines
0.00014710426330566 saniye
0.00020098686218262 saniye
0.00024795532226562 saniye
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

 

Kronometre Sınıfı

PHP
20 lines
<?php
class Kronometre {
static $zaman=array();
public static function ayarla($n='0') {
list($msn, $sn) = explode(chr(32), microtime());
self::$zaman[$n]=$msn+$sn;
}
public static function al($n='0') {
list($msn, $sn) = explode(chr(32), microtime());
$simdi=$msn+$sn;
return round($simdi-self::$zaman[$n], 12)."<br/>";
}
}
Kronometre::ayarla(1);
Kronometre::ayarla(2);
/*
...bazı php kodları
*/
echo "Geçen süre: ".Kronometre::al(1);
echo "Geçen süre: ".Kronometre::al(2);
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Çıktısı

Markdown
2 lines
Geçen süre: 0.000207901001
Geçen süre: 0.00014090538
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX