2 уақыт аралығындағы минуттар әртүрлі

Бұл жұмыс PHP 5.3-те келтірілген

$datetime1 = new DateTime("2011-10-10 10:00:00");
$datetime2 = new DateTime("2011-10-10 10:45:00");
$interval = $datetime1->diff($datetime2);
$hours   = $interval->format('%h'); 
$minutes = $interval->format('%i');
echo 'Diff. in minutes is: '.($hours * 60 + $minutes); 

PHP 5.2-де қалай жұмыс істей аламын? барабар функциялар бар ма?

Got it working

$date1 = "2011-10-10 10:00:00";
$date2 = "2011-10-10 10:11:00";
echo round((strtotime($date2) - strtotime($date1)) /60);
18

3 жауаптар

DateTime орнына сіз strtotime және күні :

$datetime1 = strtotime("2011-10-10 10:00:00");
$datetime2 = strtotime("2011-10-10 10:45:00");
$interval  = abs($datetime2 - $datetime1);
$minutes   = round($interval/60);
echo 'Diff. in minutes is: '.$minutes; 
41
қосылды
Бұл менің редакциямнан кейін және @JaisonErick ұсынысымен бірдей шешім. ;-)
қосылды автор hsz, көзі
Салқын, жақсы жұмыс :)
қосылды автор Elton da Costa, көзі
Рахмет, басқа шешім тапты .. менің жаңартуымды көріңіз
қосылды автор sam, көзі
иә, дұрыс .. thanks :)
қосылды автор sam, көзі
Менің ойымша, $ interval/60-ды пайдалану минуттарды алу үшін жақсы. «күн ('i', ...)» 59 минут ішінде шектеледі.
қосылды автор Jaison Erick, көзі

Мұны көріңіз

function time_Diff_Minutes($startTime, $endTime) {
        $to_time = strtotime($endTime);
        $from_time = strtotime($startTime);
        $minutes = ($to_time - $from_time)/60; 
        return ($minutes < 0 ? 0 : abs($minutes));   

 } 
 echo time_Diff_Minutes("2008-12-13 20:00:00","2008-12-14 08:00:00"); //output 720
 echo time_Diff_Minutes("2008-12-14 20:00:00","2008-12-13 08:00:00"); //output 0 (startTime > endTime) Ternary will return 0  
0
қосылды

Егер сіз бірнеше күнді қамтитын минуттарды қажет етсеңіз, оны біріктіруге болады:

$days = $interval->format("%d");

if ($days > 0) {
  return ($hours * 60 + $minutes) + ($days * 24 * 60);
}
0
қосылды