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