phpbar.de logo

Mailinglisten-Archive

[php] Mehrdimensionales Array prüfen ob Key existiert

[php] Mehrdimensionales Array prüfen ob Key existiert

Maik Ryssel maik at laubegaster.de
Die Jul 24 17:53:48 CEST 2007


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