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...