Mailinglisten-Archive |
Hi, ich wuerde gerne leere Felder aus einem Array enfernen. Dazu habe ich mir folgende Funktion geschrieben. Ich habe schon versucht, die Positionen der leeren Felder in einen anderen Array zu schreiben und diesen dann mit einer for each Schleife zu durchlaufen, in der folgende Anweisung steht: while(list($key,$val) = each($array_mit_den_ids_der_leeren_felder)) { $key_index = array_keys(array_keys($array_mit_leerfeldern), $value); array_splice($array_mit_leerfeldern, $key_index[0],1); } das geht deshalb in die Hose, weil nach jedem splice, der Index des Arrays mit den leeren feldern veraendert wird und somit die im Array gespeicherten Positionen der leeren Felder nicht mehr stimmen. Jetzt habe ich mir eine Funktion geschrieben, die sich nach dem loeschen eines leeren Feldes wieder selbst aufrufen soll (geht das ueberhaupt?). Folgendes habe ich zusammengestrickt, will aber nicht so richtig: function kill_empty_fields($array) { foreach($array as $pos => $value) { if ($value=="") { unset($array['$pos']); break; } kill_empty_fields($array); } } Kann mir jemand sagen, wo da der Wurm drin ist? Danke und Ciao Sacha
php::bar PHP Wiki - Listenarchive