我正在创建一个命令,并希望获得所有选项,所以我在代码中使用getOptions(),但它总是返回一个空数组。在做了一些调试之后,我发现这个getOptions方法是在HasParameters trait中定义的,并且总是一个空数组;我想知道它的目的是什么?我在文件里找不到任何关于它的东西。这是Laravel的东西吗?一个是Symfony?
mznpcxlj1#
正如你所说,getOptions来自HasParameters,你应该看到HasParameters在Illuminate\Console\Concerns命名空间中,所以它是100%的laarvel...因此,您要使用的内容是:$this->options(),它将返回一个选项数组...
getOptions
HasParameters
Illuminate\Console\Concerns
$this->options()
fnx2tebb2#
建立指令时,您可以提供参数:
protected $signature = 'app:test {user} {test=} {--force}';
字符串此签名包含:
例如,php artisan app:test 1 test=mail
php artisan app:test 1 test=mail
例如,php artisan app:test 1 test=mail --force单独获取所有:$this->选项()和$this->参数()
php artisan app:test 1 test=mail --force
getArguments()和getOptions()方法是您可以定义命令接收的任何参数或选项的地方。这两种方法都会传回命令数组,这些命令由数组选项的清单描述。实际上,如果您创建了一些命令,就不必考虑这些函数
2条答案
按热度按时间mznpcxlj1#
正如你所说,
getOptions
来自HasParameters
,你应该看到HasParameters
在Illuminate\Console\Concerns
命名空间中,所以它是100%的laarvel...因此,您要使用的内容是:
$this->options()
,它将返回一个选项数组...fnx2tebb2#
建立指令时,您可以提供参数:
字符串
此签名包含:
例如,
php artisan app:test 1 test=mail
例如,
php artisan app:test 1 test=mail --force
单独获取所有:$this->选项()和$this->参数()
getArguments()和getOptions()方法是您可以定义命令接收的任何参数或选项的地方。这两种方法都会传回命令数组,这些命令由数组选项的清单描述。
实际上,如果您创建了一些命令,就不必考虑这些函数