2016-08-08 4 views
-1

Я обрабатываю вход пользователей.Улавливание уведомления о взрыве()

Ввод должен иметь следующий формат:

text. address: xyz 

Теперь я пытался использовать:

$address = explode('address: ', $text)[1]; 

Но это приводит к ошибке в случае ввода пользователя не соответствует необходимому формату.

Как предотвратить это (возможно, включая проверку), поэтому сценарий не будет вызывать уведомление?

+0

Подтвердите это значение * перед тем, как вы воздействуете на него –

+0

Это похоже на ваш другой вопрос http://stackoverflow.com/q/38796925/, где остался комментарий с тем же самым точным синтаксисом. * 'explode ('address:', $ str) [1]'? - Casimir et Hippolyte 2 дня назад * - что я могу добавить, у вас есть ответы. Так кто знает, где это стоит. –

+0

Не следует использовать 'explode' для извлечения строк в первую очередь. Для этого больше подходят регулярные выражения. – mario

ответ

0

Сначала назначьте переменной:

$address = explode("address: ", $text); 

Затем проверьте, если установлен ключ 1:

if (isset($address[1]) { 
    $address = $address[1]; 
} 

Тогда вы не должны иметь никаких уведомлений, потому что в следующий раз вы будете в существующий параметр в массиве.