php計算時間差/兩個時間日期相隔的天數,時,分,秒.


<?php
function timediff( $begin_time, $end_time )
{
    if ( $begin_time < $end_time ) {
        $starttime = $begin_time;
        $endtime = $end_time;
    } else {
        $starttime = $end_time;
        $endtime = $begin_time;
    }
    $timediff = $endtime - $starttime;
    $days = intval( $timediff / 86400 );
    $remain = $timediff % 86400;
    $hours = intval( $remain / 3600 );
    $remain = $remain % 3600;
    $mins = intval( $remain / 60 );
    $secs = $remain % 60;
    $res = array( "day" => $days, "hour" => $hours, "min" => $mins, "sec" => $secs );
    return $res;
}
//======== 實例使用 ========
$timediff = timediff( strtotime( "2011-10-28" ), strtotime( "2011-10-29" ) );
print_r( $timediff );
?>


這個直接返回數組 很實用。。

 

一下還有:

來自:http://www.zh30.com/php-time-difference-between-two-dates.html

我修改了下:

<?php
$one = strtotime('2011-12-08 07:02:40');//開始時間 時間戳
$tow = strtotime('2011-12-25 00:00:00');//結束時間 時間戳
$cle = $tow - $one; //得出時間戳差值

/* 這個只是提示
echo floor($cle/60); //得出一共多少分鍾
echo floor($cle/3600); //得出一共多少小時
echo floor($cle/3600/24); //得出一共多少天
*/
/*Rming()函數,即舍去法取整*/
$d = floor($cle/3600/24);
$h = floor(($cle%(3600*24))/3600);  //%取余
$m = floor(($cle%(3600*24))%3600/60);
$s = floor(($cle%(3600*24))%60);

echo "兩個時間相差 $d$h 小時 $m$s 秒"
?>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM