Tarihlerin eklenmesi, yazdırılması ve karşılaştırılması işlemlerinden sonra iki tarih arasındaki farkın istediğimiz zaman dilimi bazında gösterimi örneklerine geçebiliriz. Önceki ilgili yazılar için:
bkz: PHP ile bugünün tarihini yazdırmak
bkz: PHP'de tarihe gün ya da saat eklemesi yapmak
bkz: PHP'de tarih karşılaştırması yapmak (önce sonra karşılaştırmaları)
bkz: PHP'de time fonksiyonu kullanımı
bkz: PHP'de string'i tarihe dönüştürmek (strtotime fonksiyonu)
bkz: PHP'de timezone kullanarak tarihi ve saati yazdırmak
Örnek: Başkangıç ve bitiş tarihleri belirtilen iki zamansal değişken arasındaki farkı bulan bir PHP uygulaması yazın.
Çözüm:
<?php
$baslangic = date_create("2019-06-01 12:00:00");
$bitis = date_create("2021-03-21 13:00:00");
$fark = date_diff($bitis, $baslangic);
echo $fark->format('%y yıl %m ay %d gün %h saat'); //1 yıl 9 ay 20 gün 1 saat
?>
Not: alternatif olarak time fonlsiyonu da kullanılabilir.
Not 2: Eğer $fark değişkenini formatlayarak çıktı almazsanız aşağıdaki hatayı alırsınız.
Object of class DateInterval could not be converted to string