Mailinglisten-Archive |
>die Funktion array_walk durchläuft bekanntlich ein Array und führt bei
>jedem Element ein Callback aus. Da dieses Traversieren nur
>eindimensionale Arrays durchwandert, möchte ich diese beim Einsatz
>geschachtelter Arrays nun selber nachprogrammieren.
>Wie kann ich denn einer Funktion einen generischen Callback mitgeben und
>aufrufen? Geht das überhaupt?
>function traverse ($array, $func) {
> ...
>($func) ($val);
> ...
>}
so:
function traverse (&$neues_array,$array, $func) {
reset($array);
while(list($k,$v)=each($array)){
if( is_array($v)==true ){
traverse ($neues_array[],$v,$func);
}else{
$neues_array[] = $func($v);
}
}
}
damit baust du dir es wieder zusammen
$neues_array = array();
$array = irgendwas rekursives numereisches ...
function traverse ($neues_array,$array, 'strtoupper');
da wars, "müsste" eigentlich gehen :-)
kiri
________________
8307 305 165 1781
php::bar PHP Wiki - Listenarchive