Sven Rautenberg: Mehrdimensionale Arrays sortieren

Beitrag lesen

Moin!

  1. Array ist $kontakt mit Schlüssel 0,1,2,3,4,5...
  2. Array ist $kontakt[$i] mit Schlüssel Name, Vorname, Telephon...

Nun möchte ich das gesamte mehrdimensionale Array z.B. nach Vorname sortieren. Ich habe einfach keine Ahnung wie ich das bewerkstelligen soll?

Du mußt dir eine benutzerdefinierte Sortierfunktion basteln. Genauer: Du benutzt die PHP-Sortierfunktion usort() (wahlweise kannst du auch mal gucken, ob uasort() oder uksort() besser geeignet sind) und definierst eine Vergleichsfunktion, um damit festzustellen, welches Arrayelement von zweien "kleiner" ist und damit weiter nach vorne gehört in deiner Sortierung.

Die Beispiele in http://www.php.net/manual/en/function.usort.php sollten eigentlich als Hilfestellung ausreichen.

Und noch ein kleines anderes Problem: Angenommen ich habe eine Variable $a mit dem Wert "zeichenkette" und ich habe eine Variable $zeichenkette. Nun möchte ich anhand von $a auf $zeichenkette zugreifen. Denn $a kann noch andere Werte wie "zeichen2", "kette"... annehmen und ich habe noch andere Variablen wie $zeichen2, $kette...

Wenn in $a der Variablenname der Variablen drinsteht, dann kannst du mit ${$a} auf diese Variable zugreifen.

Siehe auch http://www.php.net/manual/en/language.variables.variable.php, wobei ich das dort angeführte Beispiel nicht unbedingt für gut halte.

- Sven Rautenberg

--
"Bei einer Geschichte gibt es immer vier Seiten: Deine Seite, ihre Seite, die Wahrheit und das, was wirklich passiert ist." (Rousseau)