laravel定时任务配置


记录一下在laravel中使用定时任务的方法。

laravel定时任务

设置系统定时任务

crontab -e
# 添加以下一句
* * * * * php /path/to/artisan schedule:run
# 如果你的php解析器在docker容器中,那么用下面这句,注意使用你自己的container名称或者id,同时将php和artisan路径改为你的实际路径
* * * * * docker exec YourContainerId /bin/bash -c "/usr/local/bin/php /path/to/artisan schedule:run"

添加一个定时任务

定时任务写在app/Console/Kernel.php文件中的schedule方法中即可,你可以设置定时执行闭包,或者定时执行一个命令。

// 执行闭包
$schedule->call(function() {
    //TODO ...
})->everyMinute();
// 执行命令
$schedule->run('foo')->hourly();