看一看這段代碼:PHP日期間隔 - 錯月的差異
$first = DateTime::createFromFormat('Y-m', '2001-07');
$last = DateTime::createFromFormat('Y-m', '1998-06');
$interval = $first->diff($last);
echo "m diff: ".$interval->m." y diff: ".$interval->y."\n";
輸出爲米DIFF:0 Y,DIFF:3
爲什麼它返回一個錯誤月的差異?
有趣的是,如果我將日期更改爲'2001-08'和'1998-07',它會返回正確的月份間隔== 1。
謝謝!
如果您添加一天(如'2001-07-01'和'1998-06-01',格式爲'Ymd' –
會發生什麼?不能這樣做,因爲我從數據庫中獲取日期,並且它可能包含在我的情況下,這一天是無關緊要的 - 只有一個月的差異是重要的 – user2723490