Я все еще использую Laravel 5.3.(Я скоро обновляюсь, но до сих пор застрял в этой версии).Я создал несколько команд и зарегистрировал их в моем файле kernal.php.Вот пример:
class Kernel extends ConsoleKernel
{
protected $commands = [
// one off commands
Commands\Sproj\Command1::class,
Commands\Sproj\Command2::class,
Commands\Sproj\Command3::class,
Commands\Sproj\Command4::class,
// scheduled commands
Commands\ScheduledCommand1::class,
Commands\ScheduledCommand2::class,
Commands\ScheduledCommand3::class,
];
protected function schedule(Schedule $schedule)
{
$schedule->command('ScheduledCommand1')->dailyAt('14:00');
$schedule->command('ScheduledCommand2')->dailyAt('15:00');
$schedule->command('ScheduledCommand3')->dailyAt('16:00');
}
protected function commands()
{
require base_path('routes/console.php');
}
}
Пример одной из команд:
class Command1 extends Command
{
protected $signature = 'sproj:command1';
protected $description = 'Command Example';
public function __construct()
{
parent::__construct();
}
public function handle()
{
echo 'Do something here';
}
}
Я хочу выполнить одну из команд 'one-off', и поэтому яиспользуя что-то вроде php artisan sproj:command1
Это работает, но также выполняет все остальные команды, которые я создал.Даже если я запускаю встроенную команду, такую как php artisan cache:clear
, все мои пользовательские команды выполняются
Я что-то не так делаю?