Türkçe Tarih Formatlamak

<?php
header('Content-Type: text/html; charset=utf-8');
class tr {
	static function tarih($format='',$tarih=''){
		$aylar = Array('Ocak','Şubat','Mart','Nisan','Mayıs','Haziran','Temmuz','Ağustos','Eylül','Ekim','Kasım','Aralık');
		$gunler = Array('Pazar','Pazartesi','Salı','Çarşamba','Perşembe','Cuma','Cumartesi');
		if($tarih== ''){$tarih=time();}
    $ftarih = str_replace('D','#1', $format);
    $ftarih = str_replace('l','#2', $ftarih);
    $ftarih = str_replace('M','#3', $ftarih);
    $ftarih = str_replace('f','#4', $ftarih);
    $gun = $gunler[date('w', $tarih)];
    $ay = $aylar[date('m', $tarih)-1];
    $cikti = str_replace('#1',$gun, date($ftarih, $tarih));
    $cikti = str_replace('#2',$gun, $cikti);
    $cikti = str_replace('#3',$ay, $cikti);
    $cikti = str_replace('#4',$ay, $cikti);
    return($cikti);
  }
}
echo tr::tarih('d M Y, D H:i:s');
?>

Çıktısı

23 Mayıs 2018, Çarşamba 20:38:10

 

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;

?>