2013-02-19 212 views
0

我想从差异2日期得到多少过去的一天。从差异2日期得到过去的一天

PHP代码:

$date1 = new DateTime('2013-02-20'); 
$date2 = new DateTime('2013-02-22'); 
$interval = $date1->diff($date2); 
if ( $interval->days >= 0) 
     echo "past day:" . $interval->days . " das "; 

结果是:2,如何让-2?

回答

4

属性DateInterval的invert指定间隔是否为负或没有。

这样:

$date1 = new DateTime('2013-02-20'); 
$date2 = new DateTime('2013-02-22'); 
$interval = $date2->diff($date1); 

if ($interval->days >= 0) { 
     echo 'Past day: ', (($interval->invert ? -1 : 1) * $interval->days), ' days '; 
} 
+0

+1不错,其中PHP的版本是什么呢? – SparKot 2013-02-19 18:10:26

+0

@DoSparKot:需要至少5.3。 – silkfire 2013-02-19 18:12:37

0

尝试以下方法:

​​