2015-09-28 7 views
0

Я работаю над довольно простым оператором if-else, который содержит условие strstr или strpos.php strstr/strpost не работает

Код:

if(strpos(strtolower($ofcountry),"except")){ 

.... 

} 

Можете ли вы сказать мне, что случилось с этим кодом?

Привет Фил

+2

Первое шоу $ ofcountry –

ответ

2

strpos возвращает False, когда строка не найдена, и 0 когда строка найдена в позиции 0. Но в предложении if0 также является false! Как вы можете рассказать друг другу? Easy: === (или !==) оператор вернет false только против абсолютного False. Не против 0. Таким образом, использовать его как это:

if(strpos(strtolower($ofcountry),"except") !== False){ 

http://php.net/manual/en/function.strpos.php, проверьте первый розовый Предупреждение

+0

Ok здорово, я забыл о том. Моя вина. Спасибо. Но что, если мне нужно иметь другие инструкции elseif? В общем случае у меня есть 4 условия, и каждое условие содержит strpos .... – FlyingKanGuru

+0

Тогда тот же ответ применяется ... Я не понимаю вашу озабоченность. – Amarnasan

+0

Вы просто привязываете strpos к другим элементам ваших операторов if: 'if (strpos (strtolower ($ ofcountry)," except ") === false && $ test == 'bob')' – JammyDodger231