Kalan Zamanı Bulma
ADET PAKET VAR YILLIK
paketi alırken sql e bugün aldığını farz edersek
2022-01-08 15:15:15 diye kaydediyorum
$date = date(d-m-Y H:i:s);
ile bugünkü zamanı alıyorum
sonra bunlar zaman damgasına çeviriyorum
<?php
function Sure($zaman,$ayrinti = 2){
$date = date("Y-m-d H:i:s");
$artiyil = date($zaman,strtotime("+1 year"));
$paketDamga = strtotime($artiyil);
$suanDamga = strtotime($date);
$ciktiDamga = $paketDamga - $suanDamga; // alım zamanını suanki zamandan çıkarıyorum.
// yuvurlamaları yapıyorum
$dakika = round($ciktiDamga/60);
$saat = round($ciktiDamga/3600);
$gun = round($ciktiDamga/86400);
$hafta = round($ciktiDamga/604800);
$ay = round($ciktiDamga/2419200);
$yil = round($ciktiDamga/29030400);
if($ayrinti == 1){
return $yil . " Yıl Kaldı";
}elseif($ayrinti == 2){
return $yil." Yıl ".$ay." Ay Kaldı";
}elseif($ayrinti == 3){
return $yil." Yıl ".$ay." Ay ".$hafta." Hafta Kaldı";
}elseif($ayrinti == 4){
return $yil." Yıl ".$ay." Ay ".$hafta." Hafta ".$gun." Gün Kaldı";
}elseif($ayrinti == 5){
return $yil." Yıl ".$ay." Ay ".$hafta." Hafta ".$gun." Gün ".$saat." Saat Kaldı";
}elseif($ayrinti == 6){
return $yil." Yıl ".$ay." Ay ".$hafta." Hafta ".$gun." Gün ".$saat." Saat ".$dakika." Dakika Kaldı";
}
}
$zaman = "2022-01-08 15:15:15";
echo Sure ($zaman,5);
// çıktısı : 1 Yıl 13 Ay 52 Hafta 365 Gün 8760 Saat Kaldı
?>
bunun çıktısı 1 yıl 0 ay 0 hafta 0 gün 0 saat Kaldı
olmasını istiyorum o arada yapacağım işlemi kestiremedim bir türlü kestiremedim
o aradaki işlemi nasıl yapmam gerekiyor. istediğim gibi sonuç alabilmem için
Sanırım istediğin şu.
<?php
function time_left($date) {
$date2 = date("Y-m-d H:i:s");
$diff = abs(strtotime($date2) - strtotime($date));
$years = floor($diff / (365*60*60*24));
$months = floor(($diff - $years * 365*60*60*24) / (30*60*60*24));
$days = floor(($diff - $years * 365*60*60*24 - $months*30*60*60*24)/ (60*60*24));
$hours = floor(($diff - $years * 365*60*60*24 - $months*30*60*60*24-$days*60*60*24)/ (60*60));
$minutes = floor(($diff - $years * 365*60*60*24 - $months*30*60*60*24-$days*60*60*24-$hours*60*60)/60);
$seconds = floor(($diff - $years * 365*60*60*24 - $months*30*60*60*24-$days*60*60*24-$hours*60*60-$minutes*60));
echo "$years years $months months $days days $hours hours $minutes minutes $seconds seconds";
}
time_left("2022-01-9 15:15:15");
?>