Bernhard Mecl: knifflige Array-Funktion

Beitrag lesen

Irgendeine Idee, wie ich das anpacken kann?

<?

$land_0=array(
    "kuerzel" => "cg",
    "normalerName" => "Kongo",
    "synonym" => "Zaire"
  );

$land_1 = array(
    "kuerzel" => "mm",
    "normalerName" => "Myanmar",
    "synonym" => "Burma"
  );

$i=0;
  while(isset(${'land_'.$i})) {
    $kuerzel[]=${'land_'.$i}['kuerzel'];
    $laender[]=${'land_'.$i}['normalerName'];
    if(isset(${'land_'.$i}['synonym'])) {
      $kuerzel[]=${'land_'.$i}['kuerzel'];
      $laender[]=${'land_'.$i}['synonym'];
    }
    $i++;
  }

array_multisort($laender,SORT_ASC,SORT_STRING,$kuerzel);

foreach($kuerzel as $key=>$value) {
    $result[]=array('kuerzel'=>$value,'name'=>$laender[$key]);
  }

unset($kuerzel,$laender);

echo '<pre>',"\n";
  print_r($result);
  echo '</pre>';

?>

P.S.: Vorsicht mit Umlauten und Groß-/Kleinschreibung. Österreich kommt nach Zaire, DEUTSCHLAND nach Djibouti etc...