Yükleniyor...
Konularınızı tabi ki paylaşırız

Arkadaşlar tabi ki konularınızı; başlık, açıklama ve düzenli bir kod dökümanı halinde ilettiğiniz takdirde paylaşırız. Bunun için info@phpmutfagi.com mail adresine yazmanız yeterlidir. Sadece tek şartımız herkesin anlayacağı bir dilde anlatmanızdır.

Konularınızı iletirken lütfen imzanızı da gönderin. (İsim soyisim, varsa linkedin veya başka bir sosyal medya hesabınız)



Php ile iki saat arasındaki farkı almak oldukça basittir. Sadece saati unix zaman damgasına çevirmemiz gerekmektedir. Çünkü matematiksel olarak işlem yapacağımız için 10.50.01 - 23.30.01 gibi bir ifade söz konusu değildir.

<?php
// Zamanı Türkiye'ye göre ayarladık.
date_default_timezone_set('Europe/Istanbul');

$baslangicSaati = strtotime("10.50.01");
$bitisSaati = strtotime("23.30.01");
//saniye çevirdik.

$fark = (($bitisSaati - $baslangicSaati) / 60) / 60;
/*
Önce Aradaki farkı bulduk.
Daha sonra 60 bölerek dakika farkını bulduk.
Daha sonra da tekrar 60 a bölerek saati bulduk.
*/
echo $fark;
?>

Php ile iki saat arasında detaylı farkı bulmak
<?php
// Zamanı Türkiye'ye göre ayarladık.
date_default_timezone_set('Europe/Istanbul');

$baslangicSaati = strtotime("10:50:12");
//baslangicSaati => o zamana kadar geçen saniyesini buluyoruz.

$bitisSaati = strtotime("12:30:25");
//bitisSaati => o zamana kadar geçen saniyesini buluyoruz.

$fark = $bitisSaati - $baslangicSaati;
//Aradaki saniye farkını bulduk.

$dakika = $fark / 60;
$saniye_farki = floor($fark - (floor($dakika) * 60));

$saat = $dakika / 60;
$dakika_farki = floor($dakika - (floor($saat) * 60));

$gun = $saat / 24;
$saat_farki = floor($saat - (floor($gun) * 24));

echo $saat_farki . ' saat ';
echo $dakika_farki . ' dakika ';
echo $saniye_farki . ' saniye ';
//Çıktı: 1 saat 40 dakika 13 saniye
?>

Php nin kendi fonksiyonu ile saat farkı bulma

Php nin kendine ait diff() ve new DateTime() fonksiyonları ile de tarih farkını bulabilirsiniz. Ancak bu özelliğin sunucuda aktif olması gerekmektedir. Ama korkmayın %99 'unda aktif oluyor.

<?php
$baslangicTarihi = new DateTime('1996-05-07 16:27:34');
$bitisTarihi = $baslangicTarihi->diff(new DateTime('2021-06-27 24:32:12'));

echo $bitisTarihi->days . ' Toplam Gün Geçmiştir. <br />';

echo $bitisTarihi->y . ' Yıl ';
echo $bitisTarihi->m . ' Ay ';
echo $bitisTarihi->d . ' Gün ';
echo $bitisTarihi->h . ' Saat ';
echo $bitisTarihi->i . ' Dakika ';
echo $bitisTarihi->s . ' Saniye ';
/* Çıktı:
9182 Toplam Gün Geçmiştir.
25 Yıl 1 Ay 20 Gün 8 Saat 4 Dakika 38 Saniye
*/
?>

Unutmayın; bunlar sadece sizlerin daha iyi anlayabilmesi için yazdığımız ve bulduğumuz örneklerdir. Sizler bunları geliştirebilir ve fonksiyon haline getirebilirsiniz.

Görüşlerinizi Bize Bildirin :)