array_key_exists不适用于大型多维数组.对于前者
$arr = array( '1' => 10,'2' => array( '21' => 21,'22' => 22,'23' => array( 'test' => 100,'231' => 231 ),),'3' => 30,'4' => 40 );
array_key_exists(‘test’,$arr)返回’false’但它适用于一些简单的数组.
array_key_exists不起作用递归(正如
Matti Virkkunen已经指出的那样).看一下PHP手册,你可以使用以下
piece of code来执行递归搜索:
<?PHP function array_key_exists_r($needle,$haystack) { $result = array_key_exists($needle,$haystack); if ($result) return $result; foreach ($haystack as $v) { if (is_array($v)) { $result = array_key_exists_r($needle,$v); } if ($result) return $result; } return $result; }