Bu fonksiyon ile, fonksiyon içine girilen tarihten bu yana geçen süreyi bulabilirsiniz.
<?php function gecen_sure($tarih){ $bugun = date('Y-m-d H:i:s'); // Bugünün tarihi $bugun_saniye = strtotime($bugun); // Bugünün tarihi - saniye cinsinden $tarihsaniye = strtotime($tarih); // Verilen parametre - saniye cinsinden $fark = $bugun_saniye - $tarihsaniye; // Aradaki fark - saniye cinsinden if($fark > 0 && $fark < 60){ $sure = $fark." saniye"; }else if($fark >= 60 && $fark < 60*60){ $dakika = floor($fark / 60); $sure = $dakika." dakika"; }else if($fark >= 60*60 && $fark < 60*60*24 ){ $saat = floor($fark/60/60); $sure = $saat." saat"; }else if($fark >= 60*60*24 && $fark < 60*60*24*7){ $gun = floor($fark/60/60/24); $sure = $gun." gün"; }else if($fark >= 60*60*24*7 && $fark < 60*60*24*30 ){ $hafta = floor($fark/60/60/24/7); $sure = $hafta." hafta"; }else if($fark >= 60*60*24*30 && $fark < 60*60*24*30*12 ){ $ay = floor($fark/60/60/24/30); $sure = $ay." ay"; }else if($fark >= 60*60*24*30*12){ $yil = floor($fark/60/60/24/30/12); $sure = $yil." yıl"; }else{ $sure = "Hata"; } return $sure; } echo gecen_sure('2016-08-30 08:17:10'); // ?>
işaretli olan satırda fonksiyonun kullanımı verilmiştir.
Fonksiyon içerisindeki tarih bu yazıdan 1 ay önceki bir tarih yazıldığı için,
Çıktı: 1 ay
Ancak siz bu kodu tarihi değiştirmeden belki de 3 ay sonra deneyeceksiniz o zaman çıktı 3 ay olacaktır aklınız karışmasın.
Yorumlar