Mailinglisten-Archive |
Hallo,
folgendes Problem, ich habe ein mehrdimensionales Array mit beliebiger
Verschachtelungstiefe. Ich möchte prüfen ob ein bestimmter Key
existiert. Mit array_key_exists() kann ich ja nur die erste Ebene des
Arrays prüfen.
Meine Idee war nun eien rekursive Funktion zu schreiben.
<code>
$testarray = array(
'key1' => 'test1'
,'key2' => 'test2'
,'key3' => array(
'key4' => 'blafasel1'
,'key1' => 'blafasel2'
)
,'key4' => 'test4'
);
function array_key_exists_recursive($key,$array) {
foreach($array as $k => $v) {
if($k == $key) {return $key;}
if(is_array($v)) { array_key_exists_recursive($key,$v); }
}
return false;
}
var_dump(array_key_exists_recursive('key4',$testarray));}
</code>
Geht das auch eleganter zu lösen?
Danke
Gruß, Maik
php::bar PHP Wiki - Listenarchive