【转】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');
?>

 

这两种方法都可以实现。

原文地址:http://blog.csdn.net/jucrazy/article/details/6605890

posted @ 2012-06-25 17:12  曾是土木人  阅读(1149)  评论(0编辑  收藏  举报