Что не так с этим strpos и троичным оператором?

strpos($mydata,'Εntity') === false) ? 'normal' : 'other'

Возвращает всегда «нормально», даже если

 $mydata="Entity: This data must work."

0

Решение

Как я полагаю, ваша строка имеет странную кодировку, если вы посмотрите в шестнадцатеричный редактор и сравните Entity из вашей строки и из вызова strpos вы увидите разницу:

//string
45 6e 74 69 74 79
//strpos call
ce 95 6e 74 69 74 79

Поэтому, чтобы решить это сейчас, просто не копируйте его отсюда на SO, просто пишите это нормально с помощью клавиатуры, и все должно работать нормально. Доказательство здесь: http://3v4l.org/lbL4v

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]