array_key_exists не работает с многомерными массивами. если вы хотите сделать это, вы должны написать свою собственную функцию, например:
function array_key_exists_multi($n, $arr) {
foreach ($arr as $key=>$val) {
if ($n===$key) {
return $key;
}
if (is_array($val)) {
if(multi_array_key_exists($n, $val)) {
return $key . ":" . array_key_exists_multi($n, $val);
}
}
}
return false;
}
возвращает false
, если ключ не найден, или строку, содержащую "местоположение" ключа в этом массиве (например, 2:23:test
), если он найден.