Laravel 定时任务(Laravel Version 5.7)
- 生成Command文件
php artisan make:command 你的定时任务名字class名
会在app/Console/Commands下生成你的这个文件
- 配置kernel
在app/Console/Kernel.php中配置
protected $commands = [
\App\Console\Commands\你的定时任务class::class,
];
protected function schedule(Schedule $schedule)
{
// $schedule->command('inspire')
// ->hourly();
// 这里是你的定时任务执行频率,区别于Linux的crontab。
$schedule->command('你定时任务class中的$signature类成员属性')->monthlyOn(1, '00:00');
}
/**
* Register the commands for the application.
*
* @return void
*/
protected function commands()
{
$this->load(__DIR__.'/Commands');
require base_path('routes/console.php');
}
- run
php artisan schedule:run
- 配置Linux crontab,设置每分钟执行一次你的脚本文件Kernel
* * * * * 你的PHP路径/php7.0 项目路径/artisan schedule:run >> /dev/null 2>&1