ERLEDIGT
NEIN
NEIN
ANTWORTEN
6
6
ZUGRIFFE
1157
1157
EMPFEHLEN
-
Ich hoffe, dass diese Frage hier noch nicht vorkam. Wenn doch, entschuldige ich mich schonmal, aber die Suchfunktion funktioniert nicht.
Also, folgendes Problem, an einem Beispiel erklärt:
Habe eine typische Fußballtabelle in Excel erstellt, speicher sie als csv ab und lese sie mit php ein. So weit kein Problem.
Jetzt möchte ich aber, dass mein php-script diese Datei sortiert, nach mehreren Kriterien, also zuerst nach punkten, dann nach der Differenz und letztendlich nach den erzielten Toren.
Wie kann ich das verwirklichen? Bin für jede Hilfe dankbar!
Ich denke mal, dass ich die Daten erst in ein Array einlesen und dort sortieren muss, aber da hapert es schon mit dem php-Wissen bei mir.
-
array_multisort ist dein freund...erfordert allerdings das du zu jedem wert ein array anlegst.
bsp.:
tore und punkte eines spieltages einlesen:
PHP-Code://Aufbau der Datei:
//Team;Tore;Punkte
//Trennzeichen für die einzelnen Werte
$trenner = ";";
//Datei einlesen
$array = file("lalala.csv");
//in die array steckt nun die mit file eingelese Datei
//für die anzahl der Zeilen mache folgendes
for($x=0;$x<count($array);$x++)
{
//splitte jede Zeile nach $trenner
$matches = explode($trenner,$array[$x]);
$teams[] = $matches[0];
$tore[] = $matches[1];
$punkte[] = $matches[2];
}
//nun stecken in den Arrays $teams, $tore und $punkte alle Werte
//und müssen nun noch sortiert werden:
array_multisort (
$punkte, SORT_ASC, SORT_NUMERIC,
$tore ,SORT_DESC, SORT_NUMERIC,
$teams, SORT_ASC, SORT_STRING);
//nun ist alles sortiert und muß nur noch ausgegeben werden
for($x=0;$x<count($teams);$x++)
{
//natürlich kommt das mit nem Template viel besser ^^
echo "Team: ".$teams[$x]." Punkte: ".$punkte[$x]." Tore: ".$tore[$x];
}
//Have fun :D
-
Super, klappt einwandfrei, tausend Dank!
-
gern geschehen
-
Jetzt tut sich ein neues Problem auf:
Dezimalzahlen werden nicht korrekt sortiert! Habe ich z.B. eine Zahl 1,5 und 1,6, wird dies nur nach der Stelle vor dem Komma sortiert und danach tritt direkt das nächste Sortierkriterium in Kraft.
-
20.07.03 21:23 #6
- Registriert seit
- Feb 2002
- Beiträge
- 144
probier es mal mit . statt ,
also 1.5 und 1.6
-
Du könntest auch alternativ über die lokalen PHP Einstellungen den . zum , machen. Aber empfehlen kann ich das nicht. Es ist in jeder mir bekannten Sprache üblich das , als Punkt zu schreiben. Kommt aus dem Englischen.
Ähnliche Themen
-
CSV-Datei in PHP sortieren
Von Kalito im Forum PHPAntworten: 9Letzter Beitrag: 31.08.10, 16:19 -
Sortieren einer txt-Datei
Von touristguy im Forum C/C++Antworten: 2Letzter Beitrag: 14.07.08, 20:19 -
Externe Datei sortieren
Von MasterTobi im Forum C/C++Antworten: 0Letzter Beitrag: 28.11.07, 11:35 -
*.txt Datei sortieren
Von bob134 im Forum JavaAntworten: 3Letzter Beitrag: 19.10.07, 15:56 -
Datei auf HDD sortieren
Von DanielBodensee im Forum Delphi, Kylix, PascalAntworten: 1Letzter Beitrag: 19.04.04, 15:29





Zitieren
Login






[PHP][Snippet] Array zu XML konvertieren