我有一个数组,并非所有键都有值(在这种情况下,只有第一个成员):
$a = array("a", "b" => 4, "c" => 193);
$idx = array_search("c", array_keys($a)) ;
var_dump($idx);
返回0
;
如果我设置"a" => 123
,那么我会得到正确的返回值(2)。
为什么array_search
无法返回正确的键索引,即使并非所有键都有值?
答案 0 :(得分:4)
这是因为"c" == 0
is true
和您的第一个密钥是0
。
将true
作为第三个参数传递给array_search
mixed array_search(mixed $ needle,array $ haystack [,bool $ strict = FALSE])