dedlfix: Über Array iterien und Unterarrays sortieren

Beitrag lesen

echo $begrüßung;

Trotzdem wurmt mich das, dass ich es anders nicht hinbekommen habe. Wenn einer ein gutes Tutorial bezüglich Iteration und Rekursion im Bezug auf Arrays in PHP kennt, wäre es nett, wenn er den Link posten würde - Danke!

Du hast es doch schon fast hinbekommen gehabt.

$mein_ausgangs_array = sort_array($mein_ausgangs_array);  
  
function sort_array($arraytosort) {  
  usort($arraytosort, "gp_sort_dirsandfiles");  
  foreach($arraytosort as $key => $val) {  
    if($key == 'descendants' && count($val) > 1) $val = sort_array($val);  
  }  
  return $arraytosort;  
}

$val ist eine Kopie. Das Original ist $arraytosort[$key]. Da muss das Ergebnis von sort_array($val) rein. Also statt

$val = sort_array($val);

schreibst du

$arraytosort[$key] = sort_array($val);

und alles wird gut.

Auch die Sache mit der Referenz in PHP 5 muss ich mir mal genauer anschauen.

Das ist recht einfach. Bei foreach($array as $key => $val) setzt man vor das $val ein & und damit ist $val eine Referenz auf $array[$key]. (Das "$key =>" kann man auch weglassen, wenn man den Schlüssel, anders als in deinem Fall, nicht benötigt.)

echo "$verabschiedung $name";