İki Tarih Arasındaki Farkı Bulmak

<?php
class ZamanFarkiHesapla{
	var $damga1;
	var $damga2;
	function yilGetir($veri){
	   $sonuc=getdate($veri);
	   return ($sonuc['year']);
	}
	function gunGetir($damga){
	   $sonuc=getdate($damga);
	   return (($sonuc['yday'])+1);
	}
	function yilGun($year){
		$sonuc=$this->gunGetir(strtotime("$year-12-31"));
		return $sonuc;
	}
	function gecenYilGun($damga){
		$year=$this->yilGetir($damga);
		$sonuc=$this->gunGetir(strtotime("$year-12-31"));
		return $sonuc;
	}
	function sonYilGunu($damga){
		$gecen_yil_gun=$this->gecenYilGun($damga);
		$gun_getir=$this->gunGetir($damga);
		return ($gecen_yil_gun-$gun_getir);

	}
	function farkGetir($d1,$d2){
		$ortala=0;
		$this->damga1=strtotime($d1);
		$this->damga2=strtotime($d2);
		$yil1=$this->yilGetir($this->damga1);
		$yil2=$this->yilGetir($this->damga2);
		$fark=$yil2 - $yil1;
		switch ($fark)		{
			case '0':
				$gun1=$this->gunGetir($this->damga1);
				$gun2=$this->gunGetir($this->damga2);
				$sonuc=$gun2-$gun1;
			break;
			case '1':
				$gun1=$this->sonYilGunu($this->damga1);
				$gun2=$this->gunGetir($this->damga2);
				$sonuc=$gun1+$gun2;
			break;
			case $fark>=2:
				$gun1=$this->sonYilGunu($this->damga1);
				$gun2=$this->gunGetir($this->damga2);
				for( $i=(( $this->yilGetir($this->damga1) )+1);$i<( $this->yilGetir($this->damga2) );$i++ )
					$ortala+=$this->yilGun($i);
				$sonuc=$gun1+$gun2+$ortala;
			break;
		}
		return $sonuc;				
	}
}	
$dateDiff= new ZamanFarkiHesapla();
echo $dateDiff->farkGetir("1914-07-28","2018-06-05");//1.Dünya Savaşı
?>

Çıktısı

37933