<button id="g80sy"></button>
  • <abbr id="g80sy"></abbr>
  • <button id="g80sy"></button>
    <rt id="g80sy"><delect id="g80sy"></delect></rt>
  • PHP strtotime小BUG

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

    今天看網(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")));

    結(jié)果

    ^ "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")));

    結(jié)果

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

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

    標簽:
    最后修改:2025-05-30 00:26:53

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

    主站蜘蛛池模板: 肃南| 乐至县| 孝感市| 芜湖县| 湾仔区| 三江| 林甸县| 镇平县| 桐柏县| 施秉县| 大安市| 北川| 团风县| 民勤县| 长泰县| 临夏市| 民乐县| 建始县| 瑞金市| 蓝山县| 理塘县| 洛宁县| 光山县| 龙泉市| 密云县| 锡林郭勒盟| 确山县| 鄂温| 葫芦岛市| 葵青区| 军事| 贵溪市| 北票市| 西昌市| 石楼县| 新乐市| 邛崃市| 英德市| 剑河县| 长宁区| 赞皇县|