2012-08-06 48 views
0

可能重复:
PHP:find day difference between two date(“YmdHis”) reture通过使用两个日期查找PHP的总小时数

我有两个日期

$departure_Dtae=2012-07-25T07:30:00 
    $arrival_date =2012-07-25T10:25:00 

T表示时间,即在2012-07-25T10:25:00日期2012-07-25,时间为10:25:00(hr:mts:s)

我需要找出这两个时间之间的总小时数 即,在这种情况下,总小时是2小时55分钟 但我不知道如何计算这在PHP 有谁知道这一点?

回答

0

试试这个:

$end_time = "2008-09-05 20:59:13"; 
$start_time = "2008-09-05 19:00:16"; 
$end = date("h:i:s",strtotime($end_time)); 
$start = date("h:i:s",strtotime($start_time)); 
$diff = strtotime($end) - strtotime($start); 
//convert to min and sec 
$convert_min = $diff/60; 
$convert_sec = $diff % 60;//seconds 
//convert to hours and min 
$convert_hr = floor($convert_min/60);//hours 
$remainder = floor($convert_min % 60);//minutes 
$total_visit = $convert_hr.":".$remainder; 
3

如果使用PHP版本5.3+那么你可以使用日期时间:: DIFF():

<?php 
    function getDiff($strStart, $strEnd) { 
     $start = DateTime::createFromFormat("Y-m-d G:i:s", $strStart); 
     $end = DateTime::createFromFormat("Y-m-d G:i:s", $strEnd); 

     return $start->diff($end)->format('%hhrs %imins and %sseconds '); 
    } 

    var_dump(getDiff('2012-07-25 07:30:00', '2012-07-25 10:25:00')); 
0

您可以使用PHP的DateTime对象,它具有负载用于操纵日期的方法。

DateTime :: createFromFormat http://www.php.net/manual/en/datetime.createfromformat.php和DateTime :: diff http://www.php.net/manual/en/datetime.diff.php将是您需要执行此任务所需的功能。

$date1 = DateTime::createFromFormat('j-M-Y H:i', '15-Feb-2009 12:45'); 
$date2 = DateTime::createFromFormat('j-M-Y H:i', '15-Feb-2009 13:45'); 
$interval = $date1->diff($date2); 
echo $interval->format('H:i'); 
0
strtotime(date($arrival_date)) - strtotime(date($departure_date)); 

会给你时间中DIFF secounds,那么您可以处理你的愿望。

1
its simple 
$departure_Dtae="2012-07-25T07:30:00"; 
$arrival_date ="2012-07-25T10:25:00"; 
$departure_Dtae= str_replace("T", " ", $departure_Dtae); 
$arrival_date= str_replace("T", " ", $arrival_date); 
$diff= (strtotime($arrival_date)-strtotime($departure_Dtae)); 
echo date("h",$diff); 
相关问题