我的 PHP 函数有问题。它一直工作到现在,当我需要计算日期 2013-03-28 和 2013-04-01 之间的天数(或更准确地说是夜数)时。结果应该是 4(03/28 到 03/29、03/29 到 03/30、03/30 到 03/31 和 03/31 到 04/01)并且我的函数返回 3。(当我使用 2012- 03-28 和 2012-04-01 而不是 2013 年的相同日期,它可以正常工作)。你能帮我吗?
function termLength($dateFrom, $dateTo) {
$dateFrom = (($dateFrom instanceof DateTime) ? $dateFrom : new DateTime($dateFrom));
$dateTo = (($dateTo instanceof DateTime) ? $dateTo : new DateTime($dateTo));
$difference = $dateTo->format('U') - $dateFrom->format('U');
return floor($difference / (60 * 60 * 24));
}
echo termLength('2013-03-28', '2013-04-01');
// output: 3
// it should be: 4
你能帮我吗?谢谢,J。