nuri60 Çalışacak komutları, çalışma saatleri ve diğer özellikler ile bir tabloda tutacaksınız. \App\Console\Kernel::schedule() yöntemi içinde bu tabloyu okuyup komutları ekleyeceksiniz. En basit şekliyle:
$scheduledCommands = ScheduledCommand::where('is_active', true)
->get();
foreach($scheduledCommands as $command) {
$entry = $schedule->command($command->name)
->cron($command->cron);
if($timezone = $command->timezone) {
$entry->timezone($timezone);
}
// ...
}
+----+-----------+-------------+-----------+-----------------+
| id | is_active | name | cron | timezone |
+----+-----------+-------------+-----------+-----------------+
| 1 | true | emails:send | 0 8 * * * | Europe/Istanbul |
+----+-----------+-------------+-----------+-----------------+