当前位置:首页 > 叨叨念念 > PHP strtotime(‘-1 month‘)获取上个月份Bug

PHP strtotime(‘-1 month‘)获取上个月份Bug

叨叨念念 / 星之宇 / 2022-3-29 16:19 / 浏览:2115 / 评论:0

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 条评论

    • 昵称
    • 邮箱
    • 网址