Array nach mehreren Feldern sortieren

Murkasfjphy

Grünschnabel
Hallo,

ich möchte ein Array nach mehreren Feldern sortieren. Hier ist ein Beispiel mit meinem Lösungsversuch:

$kunde[0] = array("vorname"=>"Hans", "nachname"=>"Maier", "strasse"=>"Nussweg 12", "ort"=>"München");
$kunde[1] = array("vorname"=>"Manuela", "nachname"=>"Schmidt", "strasse"=>"Bahnhofstr. 34","ort"=>"Frankfurt");
$kunde[2] = array("vorname"=>"Klaus", "nachname"=>"Michaelis","strasse"=>"Mühlweg 8", "ort"=>"Hamburg");
$kunde[3] = array("vorname"=>"Sabine", "nachname"=>"Jabst", "strasse"=>"Flurweg 8", "ort"=>"Dresden");
$kunde[4] = array("vorname"=>"Gerhard", "nachname"=>"Blum", "strasse"=>"Wiesenweg 77", "ort"=>"Berlin");
$kunde[5] = array("vorname"=>"Marion", "nachname"=>"Michaelis","strasse"=>"Ahornweg 12", "ort"=>"Hamburg");

Function sortiere_kunde(&$a)
{
Function cmp_array_nachname ($a, $b)
{
return(strcmp($a["nachname"], $b["nachname"]));
}
usort($a, "cmp_array_nachname");
}

sortiere_kunde($kunde);

echo "kunde: ";

echo "<pre>";
print_r( $kunde );
echo "</pre>";

Doch leider funktioniert das nur nach einem Feld. Wie kann ich jetzt nach einem zweiten oder dritten Feld sortieren?
Also z.B. Name, Ort, Strasse...

Gibt es dafür eventuell eine fertige Funktion oder Klasse? Danke

Gruß Marcel
 
Zurück