我在一个变量中有两个日期,比如
$fdate = "2011-09-01"
$ldate = "2012-06-06"
现在我需要他们之间的月差。
例如,如果您从 09 月(9 月)到明年 06 月(6 月)计算,答案应该是 10 - 结果是 10。
我怎样才能在 PHP 中做到这一点?
我在一个变量中有两个日期,比如
$fdate = "2011-09-01"
$ldate = "2012-06-06"
现在我需要他们之间的月差。
例如,如果您从 09 月(9 月)到明年 06 月(6 月)计算,答案应该是 10 - 结果是 10。
我怎样才能在 PHP 中做到这一点?
更优雅的解决方案是使用DateTime和DateInterval。
<?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');
看看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');
?>