使用输入
现在我们提示了输入,我们如何在命令的handle()方法使用它们?有两种方法检索参数跟选项值。
argument() 和 arguments()
$this->arguments()返回参数数组(数组第一项是命令名),没参数调用$this->argument()会返回相同的项,我推荐使用复数方法,它提高了可读性,并只在Laravel 5.3之后版本有效。
要获取单个参数值,传递参数值给$this->argument(),如示例8-6
Example 8-6. Using $this->arguments() in an Artisan command
option() 和 options()
$this->options()返回所有选项的数组,包括一些默认为false或null的选项。$this->option()在没有参数的情况下调用时返回相同的响应;同样,我更喜欢复数方法,它只是为了更好的可读性而可用,并且只在laravel 5.3之后可用。
要只获取单个选项的值,请将参数名作为参数传递给$this->option(),如示例8-7所示。
Example 8-7. Using $this->options() in an Artisan command
示例8-8显示在handler()方法内使用argument()和option()
Example 8-8. Getting input from an Artisan command
Last updated
Was this helpful?