Genişletilmiş Tarih Metni Sınıfı

<?php
Class genisTarih {
	var $data;
	var $bol;
	var $sonuc;
	var $ay;
	function gunu($gun){
		switch ($gun){
		case 1: $this->sonuc = "birinci"; break;
		case 2: $this->sonuc = "ikinci"; break;
		case 3: $this->sonuc = "üçüncü"; break;
		case 4: $this->sonuc = "dördüncü"; break;
		case 5: $this->sonuc = "beşinci"; break;
		case 6: $this->sonuc = "altıncı"; break;
		case 7: $this->sonuc = "yedinci"; break;
		case 8: $this->sonuc = "sekizinci"; break;
		case 9: $this->sonuc = "dokuzuncu"; break;
		case 10: $this->sonuc = "on"; break;
		case 20: $this->sonuc = "yirmi"; break;
		case 30: $this->sonuc = "otuz"; break;
		}
		return $this->sonuc;
	}	
	function gun($gun){
		if(($gun - 30) > 0){
		$this->sonuc = $this->gun(30)." ".$this->gun($gun - 30);	
		} elseif(($gun - 20) > 0){
		$this->sonuc = $this->gun(20)." ".$this->gun($gun - 20);
		} elseif(($gun - 10) > 0){
		$this->sonuc = $this->gun(10)." ".$this->gun($gun - 10);
		} else {
		$this->sonuc = $this->gun($gun);
		}
		return $this->sonuc;
	}
	function ay($ay){
	$this->ay = array('Ocak','Şubat','Mart','Nisan','Mayıs','Haziran','Temmuz','Ağustos','Eylül','Ekim','Kasım','Aralık');
	$this->sonuc = $this->ay[floor($ay)-1];
	return $this->sonuc;
	}
	function genisTarih($data){
	$this->bol = explode("/", $data);
	$gun = $this->gunu($this->bol[0]);
	$this->sonuc = "Bugun ".$this->bol[2]." yılının ".$this->ay($this->bol[1])." ayının ".$gun." günündeyiz.";
	echo ucfirst($this->sonuc);
	}
}
new genisTarih(date("d/m/Y"));
?>

Çıktısı

Bugun 2018 yılının Haziran ayının ikinci günündeyiz.

 

Belirlenen Yıl ve Haftanın Hangi Günlere Arasında Olduğunu Bulma

<?php
class gunlerarasiHafta{
	function hesapla($yil, $hafta){  
		$yil = date('Y',mktime(0, 0, 0, 1, 1, $yil));
		$ilkgunun = date('w',mktime(0, 0, 0, 1, 1, $yil));
		$haftasonu = 7-$ilkgunun;
		$song = date('Y/m/d',mktime(0, 0, 0, 1, $haftasonu, $yil));
		if($hafta<54){
			for($hft=2;$hft<=$hafta;$hft++){
				$ilkgun = $haftasonu + 1;
				$song = $ilkgun + 6;
				$haftasonu = $song;
				$ilkgun = date('Y/m/d',mktime(0, 0, 0, 1, $ilkgun, $yil));
				$song = date('Y/m/d',mktime(0, 0, 0, 1, $song, $yil));
			}
		}
		$tarih = array($yil, $ilkgun, $song);
		return $tarih;
	} 
}
$yil = 2018;
$hafta = 20;
$a=new gunlerarasiHafta;
$tarih = $a->hesapla($yil, $hafta);
echo $yil." yılı ".$hafta.". hafta başlangıç günü ".$tarih[1]." ve bitiş günü ".$tarih[2];
?>

Çıktısı

2018 yılı 20. hafta başlangıç günü 2018/05/13 ve bitiş günü 2018/05/19

 

İ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