我有两个laravel调度程序表达式调用,如下所示:一个带有自定义cron表达式,每3小时运行一次,每小时运行一次。
每次,每小时调度程序运行,但不运行自定义调用程序。它曾经工作,但停止工作。如果我直接从任何函数调用Poster1 :: post(),它就可以工作。
可以向我解释为什么它不起作用,何时更早?
First Scheduler:
$schedule->call(function () {
try {
Poster1::post();
} catch (Exception $e) {
}
})->cron('0 */3 * * *');
第二个调度程序:
$schedule->call(function () {
try {
Poster2::post();
} catch (Exception $e) {
}
})->hourly();
答案 0 :(得分:1)
您可以使用Laravel调度程序功能每3小时运行一次。
$schedule->call(function () {
try {
Poster1::post();
} catch (Exception $e) {
}
})
->hourly()
->when(function() {
return intval(date('H')) % 3 === 0;
});