当任何成员为null时,array_search返回0

时间:2018-04-25 09:40:12

标签: php arrays

我有一个数组,并非所有键都有值(在这种情况下,只有第一个成员):

$a = array("a", "b" => 4, "c" => 193);
$idx = array_search("c", array_keys($a)) ;
var_dump($idx);

返回0;

如果我设置"a" => 123,那么我会得到正确的返回值(2)。

为什么array_search无法返回正确的键索引,即使并非所有键都有值?

1 个答案:

答案 0 :(得分:4)

这是因为"c" == 0 is true和您的第一个密钥是0

true作为第三个参数传递给array_search

  

mixed array_search(mixed $ needle,array $ haystack [,bool $ strict = FALSE])