PHP zawsze zwraca wartość false, gdy używam in_array(), a to, czy jest lub nie jest w tablicy, nie ma znaczenia. Na przykład:PHP in_array() zawsze zwraca false
$list = 'test
list
example';
$list_arr = array();
$list_arr = explode("\n",$list);
if (in_array('test',$list_arr)) {
echo 'Found';
}
else {
echo 'Not Found';
}
Powroty 'not found' chociaż 'test' jest wartością w tablicy
$list = 'test
list
example';
$list_arr = array();
$list_arr = explode("\n",$list);
if (in_array('qwerty',$list_arr)) {
echo 'Found';
}
else {
echo 'Not Found';
}
Powroty 'Not Found', jak to powinno
Dlaczego powrocie fałsz, kiedy to powinno być prawdą? Proszę podać wszelkie sugestie. Lista, której aktualnie używam ma ponad 10 tysięcy wartości, dlatego właśnie ją skróciłam.
Z jakiego systemu operacyjnego korzystasz? W oknach końcami linii są właściwie dwa znaki: \ r \ n, więc podzielenie go na \ n da ci "tekst \ r", "listę \ r" i "przykład". –
czy jesteś pewien, że masz '\ n', a nie' \ r \ n'? –
Czy możesz 'var_dump ($ list_arr);' i wysłać dane wyjściowe? – MrGlass