如何在运行时检测新的一天已经过去?

How to detect new day has goned in runtime?

如何在phpruntime(检测函数或逻辑等)中检测当天已经结束,新的一天已经过去?

while(true) {
    if (hasNewDayGoned()) {
        // on new day work...
    }
    
    // normal work...
}

我假设这是一个无限循环的脚本,你一直保持 运行ning。

在这种情况下,您只需检查最后一个 运行 的日期即可。

例如

$old_day = 0;
while (true) {
    if (date("Ymd") > $old_day) {
        // on new day work...
        $old_day = date("Ymd");
    }
    // normal work...
}

根据第一次启动脚本时是否需要代码,您可以将初始 $old_day 设置为 0date("Ymd")

编辑: 忘了补充,如果你的服务器在不同的时区,你可以使用 date_default_timezone_set 作为 documented here