如何使用 Laravel 任务调度将参数传递给命令
Posted
技术标签:
【中文标题】如何使用 Laravel 任务调度将参数传递给命令【英文标题】:How to pass parameters to command with Laravel Task Scheduling 【发布时间】:2019-07-03 22:27:35 【问题描述】:作为官方文档,它并没有太多提及这一点。
App\Console\Commands\PullUsersCommand.php
的签名如下:
protected $signature = 'pull:users startTime endTime minutes=10 --flag --star=';
那么,如何在App\Console\Kernel.php
中将参数传递给它
【问题讨论】:
【参考方案1】:您可以像这样在 App\Console\Kernel.php 中调用它:
$schedule->command('pull:users', [
time(), // captured with $this->argument('startTime') in command class.
time(), // captured with $this->argument('endTime') in command class.
30, // captured with $this->argument('minutes') in command class.
'--flag',// should be without any value, just the option name, and would be captured by $this->option('minutes').
'--star'=>12, // would be captured by $this->option('star').
])->daily();
Artisan::call
外观也应该没问题。
【讨论】:
以上是关于如何使用 Laravel 任务调度将参数传递给命令的主要内容,如果未能解决你的问题,请参考以下文章
如何将 JSON 返回数据作为参数传递给 URL 路由(laravel)
如何通过asp.net schtasks将参数传递给bat文件
Laravel 5.8:如何将两个参数传递给 Event 和 Listener