Laravel控制台命令 - 要求输入非必需(可选)

Jam*_*non 12 php laravel laravel-5

我正在尝试创建一个可选的控制台命令.

$phone = $this->ask('Enter a phone number for the Seller (blank if not supplied)');
Run Code Online (Sandbox Code Playgroud)

问题是,如果留空,我会得到:

[错误]需要一个值.

有没有需要回应的解决方案?也许是->nullable()类似的东西?

jed*_*ylo 18

默认情况下,需要回答控制台问题.空字符串被认为是空答案,因此错误.您需要提供一个默认值,这应该可以解决问题.

请尝试以下方法:

$phone = $this->ask('Enter a phone number for the Seller (blank if not supplied)', false);
Run Code Online (Sandbox Code Playgroud)

如果没有提供电话号码,则会给出FALSE值.您可以查看是否提供了号码

if ($phone !== FALSE) { //notice strict comparison !==
  // number has been provided
} else {
  // no number provided
}
Run Code Online (Sandbox Code Playgroud)