Коварный strpos()

Oct 05, 2009 12:01

Век живи, век учись.

Оказывается, если используешь функцию strpos() для определения вхождения подстроки в строку, то надо быть осторожным.
Скажем, мы имеем вот такую строку: $str="1,2,3,4,5,6"
И попросту спрашиваем, if (strpos($str, "2")), получаем true и живем дальше.
Но если мы спросим, if (strpos($str, "1")), мы получим что? Мы получим '0', так как функция в первую очередь возвращает позицию начала вхождения подстроки, а в неприведенном типе ноль интерпретируется как false.
Значит, проверять строку надо так: if (strpos($str, "1")===true){...}

Ну просто я час промучился.

методология, программизм

Previous post Next post
Up