0

在你打电话给行刑队之前,我意识到这个问题已经被问过了。我已经查看了 stackoveflow(和其他地方)上的 20 个示例,但我不明白为什么我的代码不起作用。我只是想使用 PHP 的 date_diff() 函数来获取两个日期之间的月数。我只用程序风格编码。

我最常看到的例子:

$startdate = "2013-06-26";
$currentdate = "2014-06-26";

$date1 = date_create($startdate);
$date2 = date_create($currentdate);
$interval = date_diff($date2, $date1);

echo $interval->format("%M months");

这似乎是常见的答案,程序明智,并且适用于除我之外的所有人。返回“00 月”,没有错误。我正在运行 PHP 4+。我觉得我已经做出了真诚的努力来理解这个功能,只是有些东西我没有得到。如果有人能解释为什么我的代码不能正常工作,我将不胜感激。

4

1 回答 1

1
$date1 = new DateTime("2013-06-26");
$date2 = new DateTime("2014-06-26");
$interval = date_diff($date1, $date2);
echo $interval->m + ($interval->y * 12) . ' months';

这会有所帮助

于 2014-06-26T20:16:29.973 回答