15

可能重复:
如何使用 PHP 计算两个日期之间的差异?
php中的日期差异?

我在一个变量中有两个日期,比如

$fdate = "2011-09-01"

$ldate = "2012-06-06"

现在我需要他们之间的月差。
例如,如果您从 09 月(9 月)到明年 06 月(6 月)计算,答案应该是 10 - 结果是 10。
我怎样才能在 PHP 中做到这一点?

4

2 回答 2

22

更优雅的解决方案是使用DateTimeDateInterval

<?php

// @link http://www.php.net/manual/en/class.datetime.php
$d1 = new DateTime('2011-09-01');
$d2 = new DateTime('2012-06-06');

// @link http://www.php.net/manual/en/class.dateinterval.php
$interval = $d2->diff($d1);

$interval->format('%m months');
于 2012-05-04T07:13:27.467 回答
15

看看date_diff

<?php
$datetime1 = date_create('2009-10-11');
$datetime2 = date_create('2009-10-13');
$interval = date_diff($datetime1, $datetime2);
echo $interval->format('%m months');
?>
于 2012-05-03T08:28:18.900 回答