<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)。

    主站蜘蛛池模板: 蓬莱市| 绥滨县| 定安县| 广东省| 嘉义市| 咸宁市| 邵东县| 全南县| 宁夏| 开原市| 抚顺县| 甘孜县| 响水县| 胶南市| 南华县| 邯郸县| 张家港市| 卫辉市| 万安县| 县级市| 平塘县| 延安市| 普宁市| 淮安市| 循化| 衡南县| 陆河县| 女性| 郧西县| 顺义区| 全椒县| 镇远县| 旬邑县| 秦安县| 邳州市| 高唐县| 恩平市| 常宁市| 阿城市| 泸西县| 马鞍山市|