Laravel任务计划程序仅在执行命令“ php artisan schedule:run”时运行

时间:2019-04-04 10:11:10

标签: scheduled-tasks laravel-5.8

我正在尝试在本地主机上的Laravel 5.8中创建一个Scheduler,但是它仅在使用以下命令时运行。

php /opt/lampp/htdocs/my_project/artisan schedule:run >> /dev/null 2>&1

php artisan schedule:run

并且不是我定义的每分钟运行

protected function schedule(Schedule $schedule)
{
    $schedule->call(function () {
        $good = new Grocery();
        $good->name = 'good';
        $good->type = 'type';
        $good->price = '222';
        $good->save();
    })->everyMinute();
}

数据存储在数据库中,但是我应该每次都运行命令。 数据库中没有什么是唯一的。

1 个答案:

答案 0 :(得分:0)

您的schedule:run需要添加到您的cronjob中。

这可以通过键入crontab -e来完成。完成后,您应该输入每分钟要执行的命令:

* * * * * php /opt/lampp/htdocs/my_project/artisan schedule:run >> /dev/null 2>&1

这会将命令设置为每分钟运行一次。然后,您的应用程序负责查看是否应运行计划的命令。