$s="d[уйц12344l]";
$c=[
0,1,2,3,4,5
];
in_array($s,$c)===true?$res='входит':$res="нет";
echo $res;
Почему выводит "входит"?
В вашем коде используется сравнение элементов без учёта их типов. При этом массив содержит числа, а искомое значение - строка. В результате чего строка приводится также к целому числу. Правила приведения в данном случае говорят, что $s
будет равно 0
. А после данного преобразования 0 уже находится в массиве.
Вы можете использовать третий параметр функции in_array
для учета типов операндов, тогда вместо простого ==
будет использоваться ===
$s = "d[уйц12344l]";
$c = [ 0,1,2,3,4,5 ];
echo in_array($s, $c, true) ? 'входит' : "нет";
которое даст ответ "нет"
Виртуальный выделенный сервер (VDS) становится отличным выбором
Друзья, доброго времени сутокУ меня в проекте идет загрузка фотографий разной, но заданной ширины и высоты на разных страницах
Есть запрос WP_Query, локально все работает и выводит все данные которые нужно, залил на боевой хостинг сайт, все запросы которые через WP_Query перестали...