Laravel 调度程序如何处理夏令时?
How does Laravel scheduler handles daylight saving time?
目前我正在安排作业在凌晨 2 点执行 ->dailyAt('02:00');
。
我想知道如果:
会发生什么
- DST 结束:作业会执行两次吗,因为凌晨 3 点变成凌晨 2 点?
- DST 开始:凌晨 2 点变成凌晨 3 点,然后作业会不会执行?
Scheduler 不处理夏令时,所以如果你在 02:00 一晚 运行 它根本不会执行,第二天晚上它会执行两次。
我建议您将其安排在 'DST Changing zone' 之外,例如 1:59
开放
好吧,如果您使用 UTC 时间,这个问题就会完全消失。 UTC 不受时区影响。将服务器上的时区 use/set 转换为 UTC 并根据需要进行转换是一种很好的做法。
目前我正在安排作业在凌晨 2 点执行 ->dailyAt('02:00');
。
我想知道如果:
会发生什么- DST 结束:作业会执行两次吗,因为凌晨 3 点变成凌晨 2 点?
- DST 开始:凌晨 2 点变成凌晨 3 点,然后作业会不会执行?
Scheduler 不处理夏令时,所以如果你在 02:00 一晚 运行 它根本不会执行,第二天晚上它会执行两次。
我建议您将其安排在 'DST Changing zone' 之外,例如 1:59
开放好吧,如果您使用 UTC 时间,这个问题就会完全消失。 UTC 不受时区影响。将服务器上的时区 use/set 转换为 UTC 并根据需要进行转换是一种很好的做法。