Laravel Artisan 命令行:输入数组 1 个改进

Artisan 支持命令接受数组输入的参数或选项,所谓数组输入,即用户在执行命令时,对单个参数,可输入多个空格分隔的值(或选项),这对一次可针对多个目标操作的命令尤其有用,比如一次向多个用户发送邮件。

数组参数

定义语法

email:send {user*}

可以看到,指明一个参数接受数组输入,只需在定义时,在参数名后加个 * 号。需要注意的是,数组参数只能添加在其它参数之后(或者説只有最后一个参数可以定义为数组参数),否则会报错。

执行示例

执行此命令时,user 参数的各输入值按顺序传递给命令行。例如,以下命令会设置 user 的值为 ['foo', 'bar']

$ php artisan email:send foo bar

可选数组参数

可以定义数组参数是可选的,定义方式如下:

email:send {user?*}

注意,? 号必须在 * 号前面噢。

数组选项

定义语法

email:send {--id=*}

可以看到,数组选项与数组参数的定义相似,也是添加一个 * 号表示是数组选项。

执行示例

执行此命令时,id 选项的各输入值按顺序传递给命令行。例如,以下命令会设置 id 选项的值为 ['1', '2']

$ php artisan email:send --id=1 --id=2

参考

本文为 Wiki 文章,邀您参与纠错、纰漏和优化
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!