Hi!
Damit ist bei dir die Integrität der Daten durch unbedachten Umgang damit im Script sehr viel gefährdeter.
Bei unbedachtem Umgang sind alle Daten gefährdet, egal wie sie strukturiert sind.
Wenn du versehentlich mal nur die Dimension $daten['vorname'] des Daten-Arrays (andersherum) sortierst, dann hast du nämlich plötzlich einen Hermann Schmidt und eine Rosalinde Müller in deinen Daten.
Der Sinn hinter diesen Spaltenarrays ist, dass man diese Unter-Arrays einzeln umsortieren kann. Dies geht nämlich als _ein_ Funktionsaufruf einer der eingebauten PHP-Funktionen. Allerdings muss man darauf achten, dass die Assoziation des Schlüssels zum Wert nicht verloren geht, also asort() statt sort() verwendet wird. Beim Zeilenarray muss man sich in aller Regel für jedes Sortierkriterium eine benutzerdefinierte Vergleichsfunktion schreiben.
Es gibt jedoch auch (mindestens) einen Anwendungsfall, der mit Spaltenarray nicht zu lösen ist, jedenfalls nicht auf die einfache Ein-Funktionsaufruf-Sortiermethode - wenn ich jetzt keinen Denkfehler habe. Man kann zwar beispielsweise das Ortsarray absteigend und das Namensarray aufsteigend sortiert vorliegen haben. Das Anwenden von asort() auf eines der Spaltenarrays kann aber bei gleichen Werten nicht in die anderen Arraya schauen, um anhand der anderen Spalten eine eindeutige Reihenfolge zu ermitteln. Für den Zweck benötigt man dann doch wieder eine benutzerdefinierte Vergleichsfunktion und der Spaltenarray-Vorteil ist hin.
Dass bei meinem Datenmodell zusammengehörige Daten wie der Vorname Hermann und der Nachname Müller mal "auseinandergerissen" würden, ist sehr viel unwahrscheinlicher.
Mit Wahrscheinlichkeit hat das nicht viel zu tun sondern mit den Fähigkeiten des Programmierers. Wieviel Programmierer absolut oder prozentual damit nicht umgehen können, ist doch für den Einzelfall uninteressant.
Lo!