Sayfa Performans Sınıfı

<?php 
class performans{
	var $basla;
	var $bitir;
	var $toplam;
	function getir(){
		$mtime = microtime();
		$mtime = explode(" ", $mtime);
		$mtime = doubleval($mtime[1]) + doubleval($mtime[0]);

		return $mtime;
	}
	function basla(){
			$this->basla = $this->getir();
	}
	function bitir(){
			$this->bitir = $this->getir();
	}
	function yazdir(){
			$basla = $this->basla;
			$bitir = $this->bitir;
			$toplam = sprintf("%.4f", abs($basla - $bitir));

			return $toplam;
	}
}
$p = new performans();
$p->basla();
for($x=0;$x<3300000;$x++)if($x%1000000 == 0)echo $x;
$p->bitir();
echo("<br>Sayfa toplam " . $p->yazdir() . " saniyede yüklendi");
?>

Çıktısı

0100000020000003000000
Sayfa toplam 1.0591 saniyede yüklendi

 

İki Tarih Arasındaki Farkı Gün, Saat, Dakika ve Saniye Olarak Hesaplamak

<?php
header('Content-Type: text/html; charset=utf-8');
date_default_timezone_set('Europe/Istanbul');
class tarihfarki{
	public $tarih1, $tarih2, $a, $gun, $saat, $dakika, $saniye;
	function __construct($tarih1, $tarih2){
		$this->tarih1 = $tarih1;
		$this->tarih2 = $tarih2;
		$this->gun = intval((strtotime($this->tarih1) - strtotime($this->tarih2)) / 86400);
		$this->a = ((strtotime($this->tarih1) - strtotime($this->tarih2))) % 86400;
		$this->saat = intval(($this->a) / 3600);
		$this->a = ($this->a) % 3600;
		$this->dakika = intval(($this->a) / 60);
		$this->a = ($this->a) % 60;
		$this->saniye = $this->a;
	}
}
$sonuc = new tarihfarki("01.01.2007 11:02:02", "20.12.2006 10:00:00");
echo $sonuc->gun . ' gün ' . $sonuc->saat . ' saat ' . $sonuc->dakika . ' dakika ' . $sonuc->saniye . ' saniye';
?>

Çıktısı

12 gün 1 saat 2 dakika 2 saniye

Bonus

Bulunduğunuz Yerin Saatini Öğrenmek için https://www.google.com.tr/search?q=between+time

Saat Farkı Eklemek veya Çıkarmak

<?php
date_default_timezone_set('Europe/Istanbul');
class saatFark {
	function saatAl($saatfark) {
		$zamanayari = ($saatfark * 60 * 60);
		return date("d.m.Y H:i:s",time() + $zamanayari);
	}
}
$s = new saatFark();
echo $s->saatAl(0);//bugün
echo "<br>";
echo $s->saatAl(-24);//dün
?>

Çıktısı

23.05.2018 22:11:09
22.05.2018 22:11:09

 

Datetime ve Time Dönüşümü ve Fark Alma

Ayrı ayrı veriyorum. version_compare ile birleştirebilirsiniz.

PHP 5.1  ve öncesi için

<?php
$mysqldatetime="2015-01-29 01:47:00";

$sifirla = date_default_timezone_get();
date_default_timezone_set('Europe/Istanbul');
$dbdekizaman=strtotime($mysqldatetime);
date_default_timezone_set($sifirla );
$simdikizaman=time();
$simdikizamandatetime=date('Y\-m\-d\ H:i:s',$simdikizaman);

if($dbdekizaman < $simdikizaman){
	echo "küçük";
}else{
	echo "büyük";	
}
echo $dbdekizaman-$simdikizaman;

?>

Php 5.2 ve sonrası için

<?php
$mysqldatetime="2015-01-29 02:05:00";

$zamanbol=explode(" ",$mysqldatetime);
$gunbol=explode(":",$zamanbol[1]);

$datetime = new DateTime($zamanbol[0]);
$datetime->setTimezone(new DateTimeZone('Europe/Istanbul'));
$datetime->setTime($gunbol[0],$gunbol[1],$gunbol[2]);
$dbdekizamandatetime=$datetime->format('Y\-m\-d\ H:i:s');
$dbdekizaman=$datetime->getTimestamp();

$time = new DateTime();
$time->setTimezone(new DateTimeZone('Europe/Istanbul'));
$simdikizamandatetime=$datetime->format('Y\-m\-d\ H:i:s');
$simdikizaman=$time->getTimestamp();

if($dbdekizaman < $simdikizaman){
	echo "küçük";
}else{
	echo "büyük";	
}
echo $dbdekizaman-$simdikizaman;

?>