Php ile iki tarih arası zaman farkı öğrenme - Seditio Yazılım - Seditio CMS Türkiye

Yayınımız yeniliklerle beraber yeni sitemizden devam ediyor. Seditio.com.tr takip edin.

User profile picture

Kaan

Seditio CMS

Php ile iki tarih arası zaman farkı öğrenme

Php de Tarih (Date) Fonksiyonu

Yerel zamanı, içene aldığı formatlama desenleri  ile şekillendirerek gösterir.

date();

İçine alacağı parametreler ve anlamları.

Gün Formatlama

D : günleri üç (3) harfli gösterir (pzt,paz,sal)

d : Günleri rakamsal olarak iki (2) haneli gösterir (01-31)

j : Günleri tek haneden başlayarak gösterir yani sıfır koymaz başına (1-31)

l ve L : Günleri harf olarak tam yazılımı ile gösterir (Pazar, Cuma)

z : Yıl bazında hangi gün olduğunu gösrerir (0-365)

Hafta Formatlama

W : ISO-8601 standartında yılın hafta numarasını gösterir (22)

Ay Formatlama

F : Ayın tam yazılım halini veirr (Ocak, Şubat)

m : Ayın iki (2) haneli sayısal değerini verir (01-12)

M : Ayın  üç (3) harfli değerini verir (oca, mar)

n : Ayları tek haneden başlayarak gösterir yani sıfır koymaz başına (1-12)

t : belirtilen ayın gün bazında sayısını verir (29)

Yıl Formatlama

Y : Yılı dört (4) haneli olarak göster (2011 / 2019)

y : yılı iki (2) haneli olarak gösterir (11 / 19)

Saat Formatlama

a : 12 saatlik sistemde öğleden öncesi ve sonrasını baz alır küçük harf ile çıktı verir (am veya pm)

A : 12 saatlik sistemde öğleden öncesi ve sonrasını baz alır büyük harf ile çıktı verir (AM veya PM)

h : 12 saatlik sistem iki (2) haneli baz alınır gece 1 öglen 1  gibi (01-12)

H : 24 saatlik sistem iki (2) haneli baz alınır (00-23)

g : 12 saatlik sistem baz alınır gece 1 öglen 1  gibi (1-12)

G : 24 saatlik sistem baz alınır (0-23)

i : iki  (2) haneli dakika gösterimi (00-59)

s : ki  (2) haneli sanıiye gösterimi (00-59)

e : Ülke bazlı zaman dilimi belirtir (UTC, GMT, Europe/Istanbul)

ı ve I : Yaz saati uygulaması yapılıyor veya yapılmıyoru belirtir (1-0)

Php de Tarih (Date) Fonksiyonu kullanımı

Yukarıdaki format yapısının en çok kullanım biçimi php de mysql yapısında şu şekildedir.

echo date("Y-m-d H:i:s"); 
//Çıktı 2020-05-15 13:52:15

Yukarıda yazdığımız kod şuan ki zaman diliminde hangi yıl, hangi ay ve hangi günde olduğumuzu saat, dakika ve saniye vermektedir. Geçmiş bir gün hesaplaması yapacak isek iki tarihe ihtiyacımız var, biz şuan ki zamanı baz alarak (2020-05-15 13:52:15) eski taih ile arasında kaç gün geçtiğini hesaplayıp ekrana yazdıralım.

$simdi = date("Y-m-d H:i:s"); //Şuan sistem zamanı
$eski = "2020-05-15 15:22:00"; // Hesaplamak için eski bi tarih

Yukarıda  şuan ki zaman ve hesap yapmak için geçmiş bir tarih belirledik. Bu tarih ve zamanı öncelikle Php fonksiyonlarından olan strtotime ile unix türünde timestamp'a çevirmemiz gerekiyor.  Time Stamp nedir derseniz Türkçe anlamı Zaman damgası, genellikle saniyenin küçük bir kısmına yakın bir doğrulukta, tarih ve zaman olarak tanımlayan bir karakter veya kodlanmış bilgi dizisidir.

$yeniGuncelle = strtotime($simdi); //strtotime tipine çeviriyoruz
$eskiGuncelle = strtotime($eski); //strtotime tipine çeviriyoruz
echo "Çıktı : $simdiGuncelle - $eskiGuncelle";

//Örnek Çıktı : 1573828389 - 1572967320 gibi olacaktır.

Artık timestamp  türünde olan zamanımızın arasındaki farkı alıyoruz

$fark =  $simdiGuncelle - $eskiGuncelle;
echo $fark;
// Örnek çıktı şimdi ki zamana göre : 861349

Bu aşamadan sonrası tamamen matamatik ile alakalı, farkları saniye, dakika ve gün çarpımları ile farkı bulup ekrana yazdıracağız.

$fark =  $simdiGuncelle - $eskiGuncelle;

$gecenGun = floor($fark / (60 * 60 * 24)); //60 sn 60 dk 24 gün
$gecenSaat = floor($fark / (60 * 60 )); //60 sn 60 dk
$gecenDakika = floor($fark / (60 ));//60sn
$gecenSaniye = $fark;
echo "$simdi Tarihinden $eski Tarihine <br> Gün : $gecenGun Saat : $gecenSaat Dakika : $gecenDadika ve Saniye $gecenSaniye geçmiştir. ";

//Örnek çıktı : 2019-11-15 14:41:58 Tarihinden 2019-11-05 15:22:00 Tarihine
//Gün : 9 Saat : 239 Dakika : 239 ve Saniye 861598 geçmiştir.

Günün Sonunda Bu İşlemlerin Tamamı Şu Şekilde;

$simdi = date("Y-m-d H:i:s"); //Şuan sistem zamanı
$eski = "2020-02-05 15:22:00"; // Hesaplammak için geri bi tarih


$simdiGuncelle = strtotime($simdi); //strtotime tipine çeviriyoruz
$eskiGuncelle = strtotime($eski); //strtotime tipine çeviriyoruz

$fark =  $simdiGuncelle - $eskiGuncelle;

$gecenGun = floor($fark / (60 * 60 * 24)); //60 sn 60 dk 24 gün
$gecenSaat = floor($fark / (60 * 60 )); //60 sn 60 dk
$gecenDakika = floor($fark / (60 ));//60sn
$gecenSaniye = $fark;

echo "$simdi Tarihinden $eski Tarihine <br> Gün : $gecenGun Saat : $gecenSaat Dakika : $gecenDakika ve Saniye $gecenSaniye geçmiştir. ";

 


php ile iki tarih arası zaman farkı öğrenme

Yorumlar

Henüz yorum yapılmamıştır.