當我使用in_array()時,PHP總是返回false,並且它是否在數組中並不重要。例如:PHP in_array()總是返回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';
}
返回「未找到」即使「測試」是陣列
$list = 'test
list
example';
$list_arr = array();
$list_arr = explode("\n",$list);
if (in_array('qwerty',$list_arr)) {
echo 'Found';
}
else {
echo 'Not Found';
}
返回「未找到」的值,因爲它應該
爲什麼返回當它應該是真的時候是錯誤的?請給出任何建議。我實際使用的列表有超過10K的值,因此我在這裏縮短了它。
你在使用什麼操作系統?在窗口中,行結尾實際上是兩個字符:\ r \ n,因此將其分割爲\ n會給出'text \ r','list \ r'和'example'。 – 2012-07-16 20:26:36
你確定你有'\ n'而不是'\ r \ n'嗎? – 2012-07-16 20:26:40
你可以'var_dump($ list_arr);'併發布輸出? – MrGlass 2012-07-16 20:32:40