WebWork Magazin - Webseiten erstellen lassen, Online Medien, html

Webhoster, Webhosting Provider und Domain registrieren

Home | Registrieren | Einloggen | Suchen | Aktuelles | GSL-Webservice | Suleitec Webhosting
Reparatur-Forum | Elektro forum | Ersatzteilshop Haushalt und Elektronik



Im Homepage und Webhosting-Forum --- array_multisort Problem oder

Scripte und Programme für PHP, MYSQL. Diskussionen zur Programmierung im Web. Fragen zu CMS, Blogsoftware, Shops, Newsletter und vielen weiteren Scripten.

Forum » PHP & MySQL » array_multisort Problem oder - 21 Dez 2024 Antworten
array_multisort Problem oder
bastir
Mausakrobat
Threadstarter




Beiträge: 150

Hallo,

ich habe heute mal ein Problem, bei dem ich ein mehrdimensionales Array nach bestimmten Werten sortieren möchte. Im php-manual und bei google gibt es auch lösungsansätze, wobei es mir noch nicht gelungen ist, daß ganze auf mein Problem zu portieren.

Ich habe wie gesagt ein Array wie folgendes:
1: 
2: 
3: 
4:
Array ( 
[1] => Array ( [from] => xyz [to] => zyx [date] => 1000000000)
[2] => Array ( [from] => foo [to] => bar [date] => 3000000000)
[3] => Array ( [from] => didel [to] => dei [date] => 2000000000))


Ich möchte nun, daß die Array-Einträge absteigend nach den Werten von [date] sortiert werden.

Am Ende sollte es dann also wie folgt aufgebaut sein:
1: 
2: 
3: 
4: 
5:
Array ( 
[2] => Array ( [from] => foo [to] => bar [date] => 3000000000)
[3] => Array ( [from] => didel [to] => dei [date] => 2000000000)
[1] => Array ( [from] => xyz [to] => zyx [date] => 1000000000)
)

Könnt ihr mir dabei helfen?

so long


---
Man kann nicht alles wissen, man muß nur wissen wo es steht!

Diese Nachricht wurde geändert von: bastir
  Profil   Website   Editieren   Zitieren
Pat-ro
Pixelschubser




Beiträge: 3

Du könntest folgenden Lösungsansatz wählen:

1. Du zählst die einträge in dem Mehrdimensionalen Array
2. Du erstellst eine For Schleife und fügst folgenden Inhalt ein:
1. Du fügst alle eintraege in dem jetzigen Array zu einem String zusammen (Mit einem bestimmten trennzeichen) Bsp: $k_v = "from.to.date"
2. Du fügst die Variable in ein neues Array hinzu
3. Du sortierst das neu entstandene Array mit sort
4. Nun machst du wieder eine for Schleife die das ganze wieder in eine Mehrdimensionales Array zerlegt

MfG
Pat-ro

  Profil   E-Mail   Editieren   Zitieren
Philipp Gérard
Foren-Team




Beiträge: 1502

Die bekommst du doch per SQL, oder?

---
Arbeit ist das Feuer der Gestaltung. - Marx

Diese Nachricht wurde geändert von: Philipp Gérard
  Profil   E-Mail   Website   Editieren   Zitieren
bastir
Mausakrobat
Threadstarter




Beiträge: 150

Nein die Daten bekomme ich per pop3-sock Verbindung (bastel an nem webmail Frontend)

so long

---
Man kann nicht alles wissen, man muß nur wissen wo es steht!

  Profil   Website   Editieren   Zitieren
bastir
Mausakrobat
Threadstarter




Beiträge: 150

Kennt keiner eine Lösung mit der array_multisort() Funktionm mit der es angeblich ja möglich sein soll, solche Probleme zu lösen, "nur wie"?

Ansonsten werde ich wahrscheinlich die oben genannte lösung nehmen müssen, vielen Dank erstmal dafür!

so long

---
Man kann nicht alles wissen, man muß nur wissen wo es steht!

  Profil   Website   Editieren   Zitieren
einstein
Quasselstrippe




Beiträge: 241

Es gibt en masse Kommentare dazu auf php.net

Du könntest ohne Probleme obigen Code auf folgendes Beispiel portieren
After a long search, I have finally found the way to a sort mulit-dimensional array by one of its columns.

If you have the following array:
$data_array["FirstName"][0] = "John";
$data_array["FirstName"][1] = "Marta";
$data_array["FirstName"][2] = "Trent";
$data_array["LastName"][0] = "Lin";
$data_array["LastName"][1] = "Tremblay";
$data_array["LastName"][2] = "Nguyen";
$data_array["Extension"][0] = 5555;
$data_array["Extension"][1] = 2222;
$data_array["Extension"][2] = 3333;

and wanted to sort by the column, "Extension", in ascending order to output the following:

FirstName LastName Extension
Marta Tremblay 2222
Trent Nguyen 3333
John Lin 5555

use:

1:
array_multisort($data_array["Extension"], SORT_NUMERIC, SORT_ASC, $data_array["FirstName"],$data_array["LastName"]);


Note: If you have more columns, list them at the end.

  Profil   Editieren   Zitieren
NetDrag
Foren-Team




Beiträge: 442

Das Problem ist daß daß date an 3. stelle im Array steht, Wenn du date an die erste stelle verschieben kannst funktioniert ein array sort.

---
We are born wet, naked and hungry, then things got worse!

  Profil   Website   Editieren   Zitieren
 

Antworten
Forum » PHP & MySQL » array_multisort Problem oder

Aktuelle Beiträge zur Hilfe im Forum für Homepage - array_multisort Problem oder im Forum Homepage Hosting AntwortenLetztes Posting
Cybersicherheit für Unternehmen
in "PHP & MySQL"
3 18.11.2024 14:05 von Gaswer
Wirtschaftslage in der Ukraine
in "PHP & MySQL"
3 22.10.2024 15:04 von Gaswer
Rangliste (Ohne Mysql) (Kompliziertes Ordner System)
in "PHP & MySQL"
3 19.07.2021 06:00 von newtopblog
kleines problem mit phpadmin
in "PHP & MySQL"
5 11.04.2021 22:22 von Zavylon
Counter mit PHP
in "PHP & MySQL"
4 22.03.2021 16:29 von Robeni
Fehlermeldung beim Importieren der Datenbank in phpmyadmin
in "PHP & MySQL"
0 02.08.2019 22:14 von iFuchs
CMS für Online Shop
in "PHP & MySQL"
18 26.05.2019 13:29 von raiserle
Regestrierungproblem
in "PHP & MySQL"
3 28.11.2018 13:20 von norbertofahey
PHP Datum ausgeben?
in "PHP & MySQL"
1 19.10.2018 10:04 von Klaus1973
PHP befehl ausführen
in "PHP & MySQL"
11 16.08.2018 09:08 von Klaus1973
Visual Composer selber programmieren?
in "PHP & MySQL"
0 22.01.2017 23:45 von Redji



Besucher : 8143339    Heute : 562     Gestern : 558     Online : 61     21.12.2024    17:37      0 Besucher in den letzten 60 Sekunden        
Nach oben