Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Datei lesen und letzte Zeile ausgeben

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Datei lesen und letzte Zeile ausgeben

    Hallo,PHP Fans!
    Ich wollte mal mit PHP anfangen ,habe allerdings ein Problem:
    Wie kann ich die Letzte Zeile der Datei user.txt in eine Variabele einlesen?


    mfg phpfreund

  • #2
    PHP-Code:
    $lines file ('user.txt');
    $letzte_zeile $lines[count($lines)-1]; 

    Kommentar


    • #3
      WOOW ,das ging schnell,
      aber das wichtigste:
      Es funktioniert!!!

      Vielen Dank!

      ps. Nice Forum

      Kommentar


      • #4
        Dann den Thread bitte noch als [Erledigt] markieren. Danke!

        Kommentar


        • #5
          Wie kann ich die Letzte Zeile der Datei user.txt in eine Variabele einlesen?

          Unten sind zwei Möglichkeiten --> ganz einfache
          und etwas unständlichere.
          Der Zeitfaktor bei 1,2 Mb Datei mit ca. 90.000 Lines
          ist 1000 !!!! Also:

          <?php

          $strFileName = 'C:\\ Image.out';


          // Möglichkeit Zwei : die datei wird 100 mal ausgelesen : 6.6 sek
          $timer = startTime();
          for($x=0;$x<100;$x++){

          $daten=file($strFileName); // file voll in den array laden
          $intCount = count($daten);
          $strRow =$daten[($intCount-1)] .'<br>'; // -1 , weil von 0 gezählt wird
          }
          echo $strRow .'<br>';
          $endTime = endTime($timer);
          echo $endTime . ' Sekunden'.'<br>';


          // Möglichkeit Eins : die datei wird 100 mal ausgelesen : 0.006 sek
          $timer = startTime();
          for($x=0;$x<100;$x++){

          $fp = fopen($strFileName,'r');
          $fileSize = fileSize($strFileName);
          $intLineFinded = 0; // Anzahl der ausgelesener Zeilen
          $intLineLenExpect = 2; // die zu erwartende Grösse der letzten Zeile

          While ($intLineFinded < 2) // es müssen mindestens zwei Zeilen ausgelesen werden, damit man sicher ist --> die letzte ist vollständig
          {
          $intLineLen = 0; // abnullen für neue Suche
          $intLineFinded = 0; // abnullen für neue Suche
          $intReadPos = $fileSize - $intLineLenExpect; // Anfangs - Postion der Lesezeichens festlegen
          fseek($fp, $intReadPos ,'SEEK_SET');
          //echo $intLineLen . ' ' . $intReadPos . ' ' . $fileSize .'<br>' ;
          While (($intLineLen + $intReadPos) < $fileSize) // --> finde Letzte Zeile
          {
          $strRow = fgets($fp,($intLineLenExpect+1));
          //echo $strRow . ' ' . $intLineLenExpect .'<br>' ;
          $intLineFinded ++;
          $intLineLen = strlen($strRow);
          $intReadPos += $intLineLen;
          }
          $intLineLenExpect *= 2 ; // wenn nur Eine Line gefunden, muss man obere Schleife wiederholen mit grösserem Wert
          // if ($intLineLenExpect >1000 ) break;
          }
          fclose ( $fp );
          }
          $endTime = endTime($timer);
          echo $endTime . ' Sekunden'.'<br>';
          echo $strRow .'<br>';
          ?>

          Kommentar


          • #6
            Hätte gut werden können, wenn Du die [php]-Marker gefunden hättest.
            [COLOR="#F5F5FF"]--[/COLOR]
            [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
            „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
            [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
            [COLOR="#F5F5FF"]
            --[/COLOR]

            Kommentar

            Lädt...
            X