我使用一个代码来寻找,因为在新的一年有多少天过去了(1月1日)。 我用这个代码:PHP DATEDIFF日发出
$newyear = new DateTime("2017-01-01"); // January 1, 2017.
$today = new DateTime(); // March 6, 2017.
$difference = $newyear->diff($today);
现在,如果我用这个代码,它显示的天正确数量,
echo $difference->format("%a days"); // 64 days
但是当我使用不同的格式,它出错。
echo $difference->format("%m months %d days"); // 2months 2 days.
我认为这是由于PHP计算2月为31天长,所以技术上它是31 + 31 + 2天。根据闰年的情况,我希望它将2月计为28或29天。我想在这里必须有一些与php.ini相关的东西。什么和在哪里改变或有什么黑客?
上的东西应该'格式()'做'如果“%m个月%d天”'中给出。这'1个月28天1个月29天2天'??你必须手工计算并自己格式化:-) – JustOnUnderMillions
它工作正常: - https://eval.in/748856 –
@Anant我也有'2个月2天',似乎有一些配置到位。忽略我的第一条评论。 :-) – JustOnUnderMillions