日日摸夜夜添夜夜添aa,亚洲一区二区在线视频,国产精品入口在线看麻豆,久久久久久久99精品免费观看

PHP strtotime小BUG

程序猿 2021-07-31 16:37:11 1966瀏覽 加載中

今天看網站統計發現上月和這月的數據一樣。用的whereMonth 時間查詢

->whereMonth('create_time')  // 本月
->whereMonth('create_time','last month')  // 上月

看著代碼沒啥問題,往上翻找到了

        if (in_array($month, ['this month', 'last month'])) {
            $month = date('Y-m', strtotime($month));
        }

于是打印了

dump(date("Y-m-d",strtotime("this month")));
dump(date('Y-m-d', strtotime("last month")));

結果

^ "2021-07-31"
^ "2021-07-01"

這不是同一月么。這是strtotime函數的BUG吧。在31號的時候返回不到上一月。

在網上巴拉巴拉,發現可以這樣寫

dump(date("Y-m-d",strtotime("first day of this month")));
dump(date('Y-m-d', strtotime("first day of last month")));

結果

^ "2021-07-01"
^ "2021-06-01"

這樣就能返回到上一個月了。

標簽:
最后修改:2025-07-11 18:30:31

非特殊說明,本博所有文章均為博主原創。