问题
Suppose I have three commands I want to schedule: 'commandA', 'commandB', and 'commandC'
But I don't want to run 'commandB' until 'commandA' is complete and I don't want to run 'commandC' until 'commandB' is complete.
I know I can schedule each to run every five minutes:
$schedule->command('commandA')->everyFiveMinutes();
$schedule->command('commandB')->everyFiveMinutes();
$schedule->command('commandC')->everyFiveMinutes();
But is it possible to chain them one after the other?
回答1:
Use then(Closure $callback) to chain commands:
$schedule->command('commandA')->everyFiveMinutes()->then(function() {
$this->call('commandB');
$this->call('commandC');
});
来源:https://stackoverflow.com/questions/29825483/chain-commands-in-laravel-artisan-scheduler