strtotime(+1个月)和12月/次年的行为

时间:2018-06-28 09:19:26

标签: php strtotime

我正在使用php,必须比较在当前月份的第一个月和下个月的第一个月之间创建的一些数据。

我使用date('Y-m-d', strtotime('+1 month'));来获取下个月的第一个月。这是否意味着我将在2019年1月1日获得当前日期,例如2018-12-16?还是strtotime('+1 month')仅添加下个月而忽略年份,所以结果将是2018-01-16 ...?

我不确定strtotime('+1 month')是否能正常工作,并且我无法使用硬编码月份进行测试; date('Y-12-d', strtotime('+1 month'));返回2018-12-28 ...我什至以正确的方式对其进行了测试?

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

strtotime('+1 month')添加当前月份中的1个月,例如

如果当前日期是2018-06-28,那么

echo date('Y-m-d', strtotime('+1 month'));

输出为:

2018-07-28

如果您希望每月的第一个日期,请使用:

echo date('Y-m-01', strtotime('+1 month')); // +1 month (Jun to July)

echo date('Y-m-01'); // Return Current Month

如果当前月份为December,并且您在strtotime('+1 month')上加上1个月,那么您的日期将在明年