【转】PHP 计算日期间隔天数
刚开始在没有查PHP手册的情况下,用比较老套方法也折腾出来了,代码是这样子实现的:
$date_1 = date('Y-m-d'); $date_2= '2012-07-16'; $date1_arr = explode("-",$date_1); $date2_arr = explode("-",$date_2); $day1 = mktime(0,0,0,$date1_arr[1],$date1_arr[2],$date1_arr[0]); $day2 = mktime(0,0,0,$date2_arr[1],$date2_arr[2],$date2_arr[0]); $days = round(($day2 - $day1)/3600/24); echo $days; exit;
后来google了一下 。发现PHP手册里 有个 DATE_DIFF 的方法 ,就是实例化了datetime 的这个类,调用diff这个方法:PHP版本>= 5.3 有效
<?php $datetime1 = new DateTime('2009-10-11'); $datetime2 = new DateTime('2009-10-13'); $interval = $datetime1->diff($datetime2); echo $interval->format('%R%a days'); ?> <?php $datetime1 = date_create('2009-10-11'); $datetime2 = date_create('2009-10-13'); $interval = date_diff($datetime1, $datetime2); echo $interval->format('%R%a days'); ?>
这两种方法都可以实现。