BUG描述
当前时间2022-03-29,通过strtotime() 函数输出上个月份:
date('Y-m-d',strtotime("-1 month")); //输出结果为2022-03-01
因为上一个月没有2022-02-29这天,所以变为2022-03-01,这个不能算是bug的bug吧。当上下月份没有今天的日时,会默认进1。当然这种月份可能存在31号和没有30号的,还有2月份也比较特殊。
解决方法
要获取上个月的月份的话,可以使用以下函数,以每个月1日为基准就可以了。
strtotime( date('Y-m-01') . " - 1 month" );
目前有 0 条评论