我正在尝试每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('* * * * *');
答案 0 :(得分:1)
您无法指定每隔 n 秒运行的计划任务。系统依赖于crontab任务,这些任务只能安排到分钟而不是更小的单元。这就是为什么不能定义一个计划任务来运行每个 n 秒,即使使用cron
方法(因为cron不支持秒)。