Sayfa Üretim Zamanı

<?php
class sayfaUretimZamani{
 function ZAMAN_AL(){
    list($usn, $sn) = explode(" ",microtime());
    return ((float)$usn + (float)$sn);
 }
 function ZAMAN_FARKI($baslangic, $bitis){
    $fark = $bitis - $baslangic;
    return $fark;
 }
}
$z = new sayfaUretimZamani;
$baslangic = $z->ZAMAN_AL();
for($x=0;$x<10000;$x++){}
$bitis = $z->ZAMAN_AL();
echo round($z->ZAMAN_FARKI($baslangic, $bitis),4);
?>

Çıktısı

0.001

 

Sayfa Modüler Çalışma Zamanı

<?php
class calismaZamaniKontrol{
	var $yukle;
	var $beklet;
	function calismaZamaniKontrol() {
		$this->beklet = 0;
		$this->yukle = 0;
	}
	function baslat(){
		list($usn,$sn)=explode(" ",microtime());
		$this->yukle=(float)$usn+(float)$sn;
	}
	function durdur(){		
		if($this->yukle==0){
			$this->beklet=0;
		}else{
			list($usn, $sn)=explode(" ",microtime());
			$asilzaman = (float)$usn+(float)$sn;
			$this->beklet+=$asilzaman-$this->yukle;
			$this->yukle=0;
		}
	}
	function devam(){
		list($usn,$sn)=explode(" ",microtime());
		$this->yukle=(float)$usn+(float)$sn;
	}
	function calismaZamani(){
		if($this->yukle == 0){
			return $this->beklet;
		}else{
			list($usn, $sn)=explode(" ",microtime());
			$asilzaman=(float)$usn + (float)$sn;
			$sonbekleme=$asilzaman - $this->yukle;
			return ($this->beklet+$sonbekleme);
		}
	}
}
$nesne = new calismaZamaniKontrol;
$nesne->baslat();
for($x=0;$x<10000;$x++);
echo "Ilk Kayit:".$nesne->calismaZamani()."<br>";  
echo "<br>Durduruldu...<br><br>";
$nesne->durdur();
echo "Ikinci Kayit:".$nesne->calismaZamani()."<br>";
echo "<br>Devam Ediyor...<br><br>";
$nesne->devam();
for($x=0;$x<10000;$x++);
echo "Ucuncu Kayit:".$nesne->calismaZamani()."<br>";
echo "<br>Durduruldu...<br><br>";
$nesne->durdur();
?>

Çıktısı

Ilk Kayit:0.003000020980835

Durduruldu...

Ikinci Kayit:0.003000020980835

Devam Ediyor...

Ucuncu Kayit:0.0040011405944824

Durduruldu...

 

Sayfa Yüklenme Zamanını Göstermek ve Gizlemek

<?php
define("SAYFA_YUKLENME_ZAMANINI_GOSTER",true);
class ZamanSayaci{
	private $baslangic;
	public function __construct(){
		if(SAYFA_YUKLENME_ZAMANINI_GOSTER){
			$sure = microtime();
			$sure = explode(" ", $sure);
			$sure = $sure[1] + $sure[0];
			$this->baslangic = $sure;
		}
	}
	public function al(){
		if(SAYFA_YUKLENME_ZAMANINI_GOSTER == true){
			$sure = microtime();
			$sure = explode(" ", $sure);
			$sure = $sure[1] + $sure[0];
			$bitis = $sure;
			$toplamsure = ($bitis - $this->baslangic);
			return sprintf("Bu sayfa %f saniyede yüklendi.", $toplamsure);
		}
	}
}
$t = new ZamanSayaci();
$a = array();
for($i=0;$i<1000;$i++){
	$a[$i] = $i;
}
echo $t->al();
?>

Çıktısı

Bu sayfa 0.000530 saniyede yüklendi.

 

Sayfa Yüklenme Süresi

<?php
class sayfaYuklemeSuresi{
	var $baslat;
	var $bitir;
	function sayfaYuklemeSuresi(){
		$this->baslat();
	}
	function baslat(){
		$this->baslat = $this->zamanAl();
	}
	function bitir(){
		$this->bitir = $this->zamanAl();
	}
	function yuklemeAl($format = '%01.2f'){
		if(empty($this->bitir))$this->bitir();
		return sprintf($format,($this->bitir - $this->baslat));
	}
	function zamanAl(){
		$zaman = microtime();
		$zaman = explode(' ', $zaman);
		return $zaman[1] + $zaman[0]; 
	}
}
$yukle = new sayfaYuklemeSuresi;
for($i=0;$i<1000000;$i++)
	$a = $i * ($i/2);
echo $yukle->yuklemeAl();
?>

Çıktısı

0.35