<?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 秒" ?>