PHP中的数组搜索问题

Kil*_*ish 2 php arrays

我没有发现程序中可能存在的问题.

我有这样的阵列

$arr = array("1", "urgent", "4", "low", "15", "avg");
Run Code Online (Sandbox Code Playgroud)

当我使用时搜索此数组

$key = array_search("4", $arr);// Working
Run Code Online (Sandbox Code Playgroud)

它给了我那个元素的索引;

但是当我搜索"1"时,它并没有给我任何索引.

$key = array_search("4", $arr); // Not working here - for searching "1"
Run Code Online (Sandbox Code Playgroud)

可能是什么问题.

谢谢

zer*_*kms 5

http://ideone.com/e1n3r您的代码运行正常.它返回key == 0,这是键,其中存储"1".

要获得0之间的差异,false您应该使用===运算符,或者相反!==:

$arr = array("1", "urgent", "4", "low", "15", "avg");

$key1 = array_search("1", $arr); 
var_dump($key1 === false);  // false (value exists)
var_dump($key1 !== false);  // true (value exists)

$key21 = array_search("21", $arr); 
var_dump($key21 === false); // true  (value does not exist)
var_dump($key21 !== false); // false (value does not exist)
Run Code Online (Sandbox Code Playgroud)