2016-01-13 2 views
11

Я пытаюсь создать дополнительную консольную команду.Команда консоли Laravel - запрашивает необязательный (необязательный) ввод

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

Проблема заключается в том, что, если оставить пустым, я получаю:

[ERROR] Требуется значение.

Есть ли работа для этого, чтобы не требовать ответа? Может быть, что-то вроде ->nullable() или подобное?

ответ

15

По умолчанию ответ на консольный вопрос не требуется. Пустая строка считается пустым ответом, следовательно, является ошибкой. Вам нужно указать значение по умолчанию, и это должно сделать трюк.

Попробуйте следующее:

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

Если номер телефона не была предоставлена ​​дастся FALSE значение. Вы можете узнать, был ли номер предоставлен

if ($phone !== FALSE) { //notice strict comparison !== 
    // number has been provided 
} else { 
    // no number provided 
} 
+0

Работает отлично. благодаря –

Смежные вопросы