Laravel调度程序时区

Pet*_*tah 5 php scheduler laravel laravel-5 laravel-scheduler

如何将Laravel调度程序设置为在特定时区的特定时间运行任务?服务器设置为UTC,但我想在Pacific/Auckland时区每周一中午12点运行任务.

例如,这将有效,但时区是UTC:

protected function schedule(Schedule $schedule) {
    $schedule->command('run-report')->weekly()->mondays()->at('12:00'));
}
Run Code Online (Sandbox Code Playgroud)

jed*_*ylo 12

你可以使用timezone()方法来做到这一点:

$schedule->command('run-report')->weekly()->mondays()->at('12:00')->timezone('Pacific/Auckland');
Run Code Online (Sandbox Code Playgroud)

  • 很难将所有方法都放在Laravel指南中,但您可以随时查看API文档(例如https://laravel.com/api/5.1/Illuminate/Console/Scheduling/Event.html)或只是浏览代码 (2认同)