• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

mutlidimensionales Array sortieren

Status
Für weitere Antworten geschlossen.

Puccini

Neues Mitglied
Hi!

Ich hab ein Problem mit dem Verständis der Sortierung von multidimensionalen arrays.

ich hab ein array tabellenkopf[$i] und eines daten[$k][$i]

das $i ist dabei jeweils der index der spalte.
$k ist der index der zeile.

zB:
Code:
tabellenkopf[1]="Name";
tabellenkopf[2]="Vorname";
tabellenkopf[3]="Ort";
tabellenkopf[4]="Datum";
 
daten[1][1]="Musterman":
daten[1][2]="Max":
daten[1][3]="Musterhausen":
daten[1][4]="1.1.2000":
 
daten[2][1]="Musterman":
daten[2][2]="Maja":
daten[2][3]="Musterhausen":
daten[2][4]="2.1.2000":
naja und so weiter.
wie realisier ich jetzt eine sortierung des arrays daten nach zb "Name"
??
Danke für die hilfe :D
 
ich würde dir empfehlen sowas garnicht zu machen, dafür sind datenbanken da. intern array sortieren ist sehr performant und dauert lange.

zudem würde ich behaupten, dass arrays dafür nicht gedacht sind.
 
genau das wollte ich vermeiden, das ich jetzt nochmal ein sql mache :<

ich hatte gehoft es würde so gehen :<

also mach ich mal eine neue query fertig :D

danke aber für die antwort.

wenn doch noch einer weis wies im php geht wäre ich acuh für diese lösung offen ;)
 
gehen tut sowas sicherlich, wenn du z.b. alle namen willst kannst du einfach:

PHP:
foreach($daten as $value)
{
$name[] = $value[1];
}

sort($name)

var_dump($name);
Ich rate aber nur bedingt zu so einem verfahren ;)
 
ich habs jetzt so gemacht das es über eine query läuft.

dabei wird geschaut auf welche Spalte geklickt wurde, ob die Spalte bereits sortiert war un dann wird der select zusammengesetzt. XD

sieht zwar kompliziert aus, aber es geht :D
 
alles was mit daten welche:

- sortierbar sind oder
- eine verbindung zueinander haben oder
- mehr als 500k sind (unterschiedliche Felder) oder
- leicht modifizierbar sind
- ....

solltest du über datenbanken lösen, wenn du mal wirklich meinst es lohnt kaum, arbeite mit sqlLite :)

Datenbanken haben sehr viele vorteile.
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben