https://blog.csdn.net/qq_32737755/article/details/92690573
经常会有人被strtotime结合-1 month, +1 month, next month的时候搞得很困惑, 然后就会觉得这个函数有点不那么靠谱, 动不动就出问题. 用的时候就会很慌…
比如 2018-07-31 这天执行代码:
1
|
|
怎么输出是的2018-07-01? 上个月的最后一天不应该是2018-06-30吗?
我们来模拟下date内部的对于这种事情的处理逻辑:
1 2 |
|
怎么办
只用每月1号处理
从PHP5.3开始呢, date新增了一系列修正短语, 来明确这个问题, 那就是”first day of” 和 “last day of”, 也就是你可以限定好不要让date自动”规范化”:
1 2 3 4 |
|