ざっと実装手順を覚え書き。
コマンドの実装
1 2 |
$ php artisan make:console DailyUpdate --command="dailyupdate" Console command created successfully. |
app\Console\Commands\DailyUpdate.php
1 2 3 4 5 6 7 8 9 10 11 12 |
class DailyUpdate extends Command { /** * Execute the console command. * * @return mixed */ public function handle() { echo 'hello'; } } |
app\Console\Kernel.php
1 2 3 4 5 6 7 8 9 10 11 12 |
class Kernel extends ConsoleKernel { /** * The Artisan commands provided by your application. * * @var array */ protected $commands = [ // Commands\Inspire::class, Commands\DailyUpdate::class, ]; } |
テスト
1 2 |
$ php artisan dailyupdate hello |
スケジューリング
app\Console\Kernel.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
class Kernel extends ConsoleKernel { /** * Define the application's command schedule. * * @param \Illuminate\Console\Scheduling\Schedule $schedule * @return void */ protected function schedule(Schedule $schedule) { // $schedule->command('inspire') // ->hourly(); $schedule->command('dailyupdate')->dailyAt('00:05'); } } |
あとはcronを設定する。
参考サイト
Task Scheduling – Laravel – The PHP Framework For Web Artisans
https://laravel.com/docs/master/scheduling
Laravel5でバッチ開発 | プログラミングメカブログ
http://blog.mekachan.net/?p=198
laravelでバッチ作ってcronで動かしてみた – Qiita
http://qiita.com/ritukiii/items/a70d89fa988b2d9afbc4