Es ist: 03.09.2010, 02:26 AM
Hallo, Gast! (Anmelden — Registrieren)
|
Array sortieren in Textfile
|
|
09.12.2003, 18:00 PM
Beitrag: #1
|
|||
|
|||
|
Array sortieren in Textfile
Hallo,
evtl.kann mir jemand behilflich sein. Habe eine TXT-Datei (MySQL steht nicht zur Verfügung) die wie folgt aufgebaut ist: id;Name;wert1;wert2;wert3;wert4 usw bis wert12;prozent es soll absteigen nach dem Prozentwert sortiert werden. In dem gesamten TXT-File sind knapp 50 Datensätze. der Prozentwert hat folgendes Format z.B. 50.25 Folgende Funktion habe ich gebastelt : ---- function sortprozent ( $a, $b ) { return strcmp( $b[14], $a[14]); //absteigend sortiert } ---- in dem Formular, wo die Daten eingegeben werden ist unter anderem eine Schaltfläche Sortieren (Wert 2), wenn diese gedrückt wird, wird folgfendes ausgeführt ---- elseif ( isset( $sort2 ) ) { arsort ( $daten, sortprozent); ---- Wäre nett, wenn mir jemand mal behilflich ist und mir zeigt, wie ich die Wert absteigen sortieren kann unter Berücksichtung des gesamten Wertes, sprich auch nach dem Punkt (ich erinnere, die Werte in dem Feld, sind nicht alles gerade Zahlen Hoffe mich einigermaßen verständlich ausgedrückt zu haben. cu kleckser cu<br />kleckser |
|||
|
10.12.2003, 15:27 PM
Beitrag: #2
|
|||
|
|||
|
Array sortieren in Textfile
Hi,
du musst deinen Prozentwert in ein Array einlesen und dann danach sortieren. Dann sollte das klappen. Hier mal ein Beispiel: Code: <?phpcu basti iwebspace.de | Webspaceorder - Bestellsystem für ISP |
|||
|
10.12.2003, 18:46 PM
Beitrag: #3
|
|||
|
|||
|
Array sortieren in Textfile
Hallo,
basti schrieb:du musst deinen Prozentwert in ein Array einlesen und dann danach sortieren. danke für das Beispiel, denke, das ich es ansatzweise "verstanden" habe, aber ich bekomme es nicht hin, es auf meine vorhanden Daten anzuwenden, irgend wie komme ich mit dem Syntax nicht klar :-( Kurze Erklärung zu meinen Daten: Meine Daten befinden sich in einem Textfile wie im Anfangsposting bereits beschrieben. Die Daten lese ich wie folgt aus : //Datei auslesen $datei = @fopen($blitz, "r"); while ( feof($datei) == 0) { $zeile = chop( fgets($datei, 50000)); if ($zeile != "") { $zeile = explode( ";", $zeile); $daten[ $zeile[0] ] = $zeile; } } fclose($datei); wobei dann $daten[0] = die ID ist $daten[1] = Name des Spielers $daten[2] - bis $daten[13] die jeweiligen Werte eines Monats (sind Punkte von Monatsturnieren-Schach) $daten[14] = die Aufsummierungen aller erreichten Prozente aus den Monatsturnieren. und eben nach $daten[14] soll sortiert werden. Die erreichten Prozente eines Monats werden bevor ich die Daten Speicher pro Monat errechnet und in $daten[14] als gesamt erreichte Prozentzahl gespeichert. //Daten absteigend sortieren nach Gesamtprozentwert $daten[14] >$werte = array("50.25", "32.12", "86.00", "12.06"); >arsort($werte, SORT_NUMERIC); >reset($werte); >while (list($key, $val) = each($werte)) { >echo "werte[".$key."] = ".$val."\n<br>"; >} //Daten speichern reset( $daten ); $datei = fopen($blitz, "w+"); while ( list( $id, $werte ) = each( $daten ) ) { $alleDaten = $alleDaten.join( ";", $werte )."\n"; } Wie muss ich dein genanntes Beispiel umbauen, damit ich es auf meine Daten anwenden kann ? Irgendwie peile ich das nicht so ganz :-( Wenn du Zeit und Lust hast, würde ich mich freuen, wenn du mir das einmal kurz anpassen könntest. Danke für deine Antwort. Gruss kleckser cu<br />kleckser |
|||
|
|
| Möglicherweise verwandte Themen... | |||||
| Thema: | Verfasser | Antworten: | Ansichten: | Letzter Beitrag | |
| Dropdownmenue aus Textfile | kleckser | 5 | 2,164 |
07.01.2004 19:04 PM Letzter Beitrag: kleckser |
|
Suche
Mitglieder
Kalender
Hilfe


