sortieren

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • sortieren

    hat jemand eine idee wie ich zeilen aus einer txt file nach einem zahlenwert mir dem grössten zuoberst sortieren kann?
    wie in einem newsscript z.B

  • #2
    hat sich erledigt

    Kommentar


    • #3
      wie hast dus geschafft?
      das bin ich...

      Kommentar


      • #4
        öhm was genau willste den daran wissen? ich habe mein konzept etwas geändert und musste nicht auf den zahlenwert zurückgreifen zum sortieren. wenns darum geht brauchst du noch zusätzliche schleifen aber hier mal wie es jetzt ist.
        Im Textfile steht z.B:
        21.April 2001 23:58:09|Elthin||Ok schein alles zu klappen!

        danach kommt ein zeilenumbruch gekennzeichnet durch ein kleiner viereckchen.
        schnell zur bedeutung. "|" ist ein trennzeichen, das ich eingefügt habe um später mit explode zu arbeiten.
        das erste element ist das datum und die zeit, das zweite element ist derjenige, der es gepostet hat und danach kommen zwei trennzeichen, dazwischen kann optional etwas stehen. das vierte element ist die nachricht
        (ja es wird ein newsscribt)
        zu beachten ist, das alle anderen zeilenumbrüche ausser den oben erwähnten (\n) vor dem schreiben ausgemustert werden müssen.
        das auslesen geht so:

        <?php
        $dateiname = "news.txt";
        if(file_exists($dateiname))
        {
        $datei = fopen($dateiname, "r");
        if($datei)
        {
        while(!feof($datei))
        {
        $news = file($dateiname); /*liest die datei aus und speichert sie in einem Array mit jeder zeile als ein array element */
        rsort($news); /*sortiert das array in umgekehrter Reihenfoge*/
        $index = 0;
        while($index < count($news)) /*zerlegt die array elemente nach trennzeichen und gibt sie in htmltabellen aus*/
        {
        $anzeige = explode("|", $news[$index]);
        $indexb = 0;
        print "<table width='43%' border='0'>\n";
        print "<tr bgcolor='#00CCFF'>\n";
        print "<td colspan='2' height='16'>\n";
        print "<div align='right'>";
        print "<font size='-1'>";
        print "posted by:&nbsp; $anzeige[1] [$anzeige[0]]";
        print "</font></div>\n";
        print "</td>\n";
        print "</tr>\n";
        print "</table>\n";
        print "<table width='43%' border='0'>\n";
        print "<tr bgcolor='#00CCFF'>\n";
        print "<td>\n";
        print "$anzeige[3]\n";
        print "<br>\n";
        if ($anzeige[2] != "")
        {
        print "<a href='./uploads/$anzeige[2]'>more";
        print "</a>\n";
        }
        print "</td>\n";
        print "</tr>\n";
        print "</table>\n";
        print "<br>\n";
        $index = $index+1;
        }
        break;
        }
        }
        fclose($datei);
        }
        else
        {
        die("Die Datei $dateiname existiert nicht auf dem Server! Die News können nicht angezeigt werden!");
        }
        ?>

        ich hoffe man kanns lesen

        na ja das kernelement ist wohl die funktion:
        file()
        die das document ausliest und alles im einem array speichert mit jeder zeile als ein array element.

        im moment arbeite ich an einem parser, weil man im moment alles mit html formatieren muss, auch zeilenumbrüche.

        Elthin

        Kommentar


        • #5
          Tipp: Wenn du längere Quelltexte postest und die Einrückungen beibehalten willst, dann pack sie zwischen [ code ] und [ /code ], dann sieht das etwa so aus:

          Code:
          for (many, many times)
          {
            i have posted using code-braces;
          }
          and i will;
          do
          {
            continue;
            this
          } while (it works);
          mein Sport: mein Frühstück: meine Arbeit:

          Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

          Kommentar


          • #6
            oh ok thx merk ich mir fürs nächstemal

            Kommentar

            Lädt...
            X