国产精品黄页网在线观看,欧美日韩国产综合新一区,国产欧美高清精品一区2,久久国产乱子伦免电影

PHP strtotime小BUG

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

今天看網(wǎng)站統(tǒng)計發(fā)現(xiàn)上月和這月的數(shù)據(jù)一樣。用的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函數(shù)的BUG吧。在31號的時候返回不到上一月。

在網(wǎng)上巴拉巴拉,發(fā)現(xiàn)可以這樣寫

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-10-29 21:36:26

非特殊說明,本博所有文章均為博主原創(chuàng)。