Mehrdimensionales Array sortieren
Hallo,
das Sortieren von Arrays scheint immer wieder Thema zu sein. So auch bei mir. Ich habe ein Array in der Form: Code:
Array Probiert habe ich das mit (Array steht in $data) PHP-Code:
Wie kann ich nun aber danach sortieren? Das Ergebnis sollte so aussehen: Code:
Array |
AW: Mehrdimensionales Array sortieren
Dafür musst du zunächst ein Array erstellen, das aus den jeweiligen Werten besteht:
PHP-Code:
|
AW: Mehrdimensionales Array sortieren
Hallo xabbuh,
danke für die Antwort. Ich glaube, ich habe mein Problem sagen wir mal suboptimal beschrieben. Hier nun ein neuer Versuch: Das gegebene Array soll neu sortiert werden. Dabei soll sich die Reihenfolge der Arrays der ersten Dimension ändern. Das Sortierkriterium soll der zweite Wert der zweiten Dimension ( etwa so $data[][2), SORT_ASC, SORT_NUMERIC) sein. Diesen kann ich jedoch per Multisort nicht ansprechen. Die Reihenfolge der Array[1]- Array[5]wie die Zielvorgabe s.o. Ich hoffe mich nun verständlicher ausgedrückt zu haben. Danke für die Geduld |
AW: Mehrdimensionales Array sortieren
Genau das sollte mein Script auch tun. Hast du es mal getestet?
|
AW: Mehrdimensionales Array sortieren
mea culpa, mea maxima culpa.
Danke. Genau so funktionierts. Genau verstanden habe ich das ehrlich gesagt noch nicht, muss es mir noch mal in Ruhe ansehen. Danke für Deine Mühe. |
AW: Mehrdimensionales Array sortieren
Hallo,
dieser Thread ist zwar ziemlich alt, aber ich habe genau das gleiche Problem, nur diese Lösung funktioniert bei mir nicht. Mein Array heisst arr_prodopt und sieht ähnlich aus (blaah sind irgendwelche Werte) Array ( [0] => Array ( [0] => blaah [1] => blaah [2] => blaah [3] => blaah [4] => blaah [5] => blaah [6] => 127 [7] => blaah ) [1] => Array ( [0] => blaah [1] => blaah [2] => blaah [3] => blaah [4] => blaah [5] => blaah [6] => 629 [7] => blaah ) [2] => Array ( [0] => blaah [1] => blaah [2] => blaah [3] => blaah [4] => blaah [5] => blaah [6] => 42 [7] => blaah ) usw ... ) Nun will ich sortieren: PHP-Code:
Kann mir vielleicht jemand sagen was ich falsch mache? |
AW: Mehrdimensionales Array sortieren
Nöö..
Ich verwende für sowas meist usort().... |
AW: Mehrdimensionales Array sortieren
OK OK,
habe Usort probiert aber wie es halt so ist funktioniert es nicht ganz: PHP-Code:
liegt das an strcmp, weil es für Strings ist? Habe für Integer bzw Zahlen da nichts gefunden. 2. wie sortiere ich erst nach Stelle 6 und dann nach Stelle 5 vom Array: Beispiel: array (blaah, blaah, blaah, blaah, blaah, 2, 100) array (blaah, blaah, blaah, blaah, blaah, 1, 100) array (blaah, blaah, blaah, blaah, blaah, 20, 50) array (blaah, blaah, blaah, blaah, blaah, 10, 50) mit dem Ergebnis: array (blaah, blaah, blaah, blaah, blaah, 10, 50) array (blaah, blaah, blaah, blaah, blaah, 20, 50) array (blaah, blaah, blaah, blaah, blaah, 1, 100) array (blaah, blaah, blaah, blaah, blaah, 2, 100) |
AW: Mehrdimensionales Array sortieren
Hab einen besseren Code gefunden, damit ist Prob 1 gelöst, aber Prob 2 leider noch nicht:
PHP-Code:
|
AW: Mehrdimensionales Array sortieren
Ich habs, für alle die es interessiert:
PHP-Code:
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 17:21:54 Uhr. |
Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.