Laravel 5计划任务不起作用

时间:2017-02-09 11:34:48

标签: laravel scheduled-tasks

我正在尝试每5秒进行一次预定任务。

这是我的代码。

  */
    protected function schedule(Schedule $schedule)
    {
        // $schedule->command('inspire')
        //          ->hourly();

        $schedule->call('App\Http\Controllers\SoapController@show')->cron('0,5 * * * *');


    }

    /**
     * Register the Closure based commands for the application.
     *
     * @return void
     */
    protected function commands()
    {
        require base_path('routes/console.php');
    }

当我进入

时,我收到了这个错误
  

php artisan schedule:运行

命令。

  

没有预定的命令可以运行。

编辑:

我更新了我的调度程序和命令部分。我创建了一个命令。

当我像

一样使用它时
  

php artisan get:data

它的工作。

但是当我尝试使用调度程序时,它只运行了一次。

protected $commands = [
        \App\Console\Commands\GetData::class,
    ];


 $schedule->command('get:data')->cron('* * * * *');

1 个答案:

答案 0 :(得分:1)

您无法指定每隔 n 秒运行的计划任务。系统依赖于crontab任务,这些任务只能安排到分钟而不是更小的单元。这就是为什么不能定义一个计划任务来运行每个 n 秒,即使使用cron方法(因为cron不支持秒)。