我有如下所示的laravel时间表设置
创建命令并命名。
class BackupDatabase extends Command{
protected $signature = 'command:backupdatabase';
在kernel.php中注册命令
protected $commands = [
Commands\BackupDatabase::class
设置句柄
Artisan::call('backup:run',['--only-db'=>true]);
$output = Artisan::output();
添加到时间表
$schedule->command('command:backupdatabase')->everyMinute();
此时间表未发生任何事情。顺便说一句,我已经在终端中尝试了“ php artisan command:backupdatabase”,并且功能运行正常。我不确定自己在做什么错,谢谢大家的建议。
答案 0 :(得分:2)
您必须设置crontab
* * * * * cd /path-to-your-project && php artisan schedule:run >> /dev/null 2>&1
Laravel计划任务工作是因为系统被计划执行laravel命令“ schedule:run”,该命令本身负责在正确的时间执行laravel计划命令。