Andreas: Textdatei auslesen und anzeigen

Hallo,
ich habe eine recht simple Frage, aber kann komm einfach nicht auf die Lösung.

Wie lese ich eine komplette Textdatei aus und gebe diese komplett wieder aus?
Wenn es geht bitte gleich ein Script reinstellen.

Andreas

  1. Hallo,
    so geht es:

    $fd = fopen ("Deine_Textdattei.txt", "r");
    while (!feof($fd)) {
        $buffer = fgets($fd, 4096);
        echo $buffer;
    }
    fclose ($fd);

    Andreas

    1. Hallo,
      so geht es:

      $fd = fopen ("Deine_Textdattei.txt", "r");
      while (!feof($fd)) {
          $buffer = fgets($fd, 4096);
          echo $buffer;
      }
      fclose ($fd);

      Andreas

      Bist du der gleiche Andreas, der die Frage gestellt hat ???????????

  2. Hallo Andreas,

    Wie lese ich eine komplette Textdatei aus und gebe diese komplett wieder aus?

    am einfachsten dürfe es sein, wenn du einfach include()[1] oder require()(für die anderen Funktionen ersetze in dem Link unten das 'include' durch die gesuchte Funktion) alternativ kannst du die Datei auch mit file() in einen Array einlesen, und den dann ausgeben, oder du verwendest fread() - mehr Möglichkeiten fallen mir im Moment nicht ein :-)

    Wenn es geht bitte gleich ein Script reinstellen.

    nene, fertige Scripte gibt es hier nicht - es heißt schließlich _self_html nicht _get_html :-)

    Grüße aus Nürnberg
    Tobias

    [1] http://www.php.net/manual/de/function.include.php

    --
    sh:( fo:) ch:? rl:( br:< n4:& ie:% mo:| va:) de:] zu:) fl:( ss:| ls:[ js:|
    (Selfcode -> http://emmanuel.dammerer.at/selfcode.html)
  3. Hi Andreas,

    mit php kann man das über die Funktion file() machen.
    Die Funktion liest die Datei ein und die Datei zeilenweise als Array einer Variable. Dabei wird jede Zeile in einem neuen Eintrag des Arrays gespeichert.

    $testvar = file(test.txt);
    foreach($testvar as $ausgabe)
    {
       echo $ausgabe;
    }

    Et Voila

    Falls noch Fragen zu den Funktionen bestehen, einfach www.php.net/manual/de/

    MfG Faramir

    1. Hi!

      $testvar = file(test.txt);
      foreach($testvar as $ausgabe)
      {
         echo $ausgabe;
      }

      Et Voila

      oder einfach:

      readfile("Deine_Textdattei.txt");

      http://php.net/readfile

      Grüße Andreas

      1. Hallo Andreas,

        readfile("Deine_Textdattei.txt");

        Schau mal: http://www.php.net/manual/en/function.file-get-contents.php
        Das wird hoffentlich allen, die nichteinmal fread() verstehen helfen ;-)

        Und es zeigt, dass man öfter mal das _englische_ Manual benutzen sollte...

        Fabian

        1. Die Funktion ist aber erst seit PHP 4.3 verfügbar. Deshalb dürfte sie noch nicht auf jedem Webspace laufen!
          http://www.php.net/manual/en/function.file-get-contents.php

          1. Hi <-- Anrede

            Die Funktion ist aber erst seit PHP 4.3 verfügbar. Deshalb dürfte sie noch nicht auf jedem Webspace laufen!

            Richtig. Aber sie ist eine schöne kleine Funktion, die so manchen unsauberen Dreizeiler in Newbee-Scripten ersetzen kann. Ausserdem ist das leichter zur merken als der ganze "Unfug" mit File-Handle etc.
            Ich sage das nicht auf mich, sondern auf die bezogen, die solche Fragen stellen, denn es kommt mir mittlerweile so vor, als kämen 2-3 Fragen davon _am Tag_!

            Grüße, Fabian <-- Verabschiedung/Grußformel

        2. Hallo!

          Schau mal: http://www.php.net/manual/en/function.file-get-contents.php

          kenn ich, geht aber erst ab PHP 4.3.0, das hat nicht jeder, außerdem schreibt es die Datei in einen String und gibt nichts aus, also was soll mir das jetzt sagen?

          Das wird hoffentlich allen, die nichteinmal fread() verstehen helfen ;-)

          Was hat das mit fread zu tun? Meinst Du mich? Was habe ich nicht verstanden? Und was soll mir der obige Link sagen? Verstehe nicht wirklich worauf Du hinaus willst.

          Und es zeigt, dass man öfter mal das _englische_ Manual benutzen sollte...

          Im Allgemeinen hast Du Recht, aber sag mir bitte wo der Unterschied liegt: http://php.net/file-get-contents

          Grüße
          Andreas

          1. Hi Andreas,

            http://www.php.net/manual/en/function.file-get-contents.php

            kenn ich, geht aber erst ab PHP 4.3.0, das hat nicht jeder, außerdem schreibt es die Datei in einen String und gibt nichts aus, also was soll mir das jetzt sagen?

            Dass man die Deppen, die mit File-Handles nix anfangen können in Zukunft auf diese simple Funktion verweisen kann, die alles, was man früher[tm] in drei nervigen Zeilen tat in eins kann...

            Das wird hoffentlich allen, die nichteinmal fread() verstehen helfen ;-)
            Was hat das mit fread zu tun? Meinst Du mich? Was habe ich nicht verstanden? Und was soll mir der obige Link sagen? Verstehe nicht wirklich worauf Du hinaus willst.

            Ich will darauf hinaus, dass die Leute noch dümmer werden müssen, um zu fragen, wie man ein komplettes File einliest ;-)

            Und es zeigt, dass man öfter mal das _englische_ Manual benutzen sollte...
            Im Allgemeinen hast Du Recht, aber sag mir bitte wo der Unterschied liegt: http://php.net/file-get-contents

            Das englische ist aktueller, vor einigen Tagen gab es die Beschreibung afair noch nicht auf deutsch.

            Fabian

            1. Ja, gibs uns Fabi du held :-)

              1. Hi Mark,

                Ja, gibs uns Fabi du held :-)

                Was möchtest du mir (uns) damit sagen?

                Fabian

            2. Hallo!

              Dass man die Deppen, die mit File-Handles nix anfangen können in Zukunft auf diese simple Funktion verweisen kann, die alles, was man früher[tm] in drei nervigen Zeilen tat in eins kann...

              Naja, die alte Version bietet eine Kontrolle/Flexibilität die viele der Anwender zum einen nicht brauchen, und die das Verständnis erschweren, ich finde die Funktionen sinnvoll.

              Ich will darauf hinaus, dass die Leute noch dümmer werden müssen, um zu fragen, wie man ein komplettes File einliest ;-)

              je einfacher die Sprache desto "dümmer" werden "die Leute", so ist das leider...

              Das englische ist aktueller, vor einigen Tagen gab es die Beschreibung afair noch nicht auf deutsch.

              Jepp, ist mir auch öfters aufgefallen, wogegen mir auch aufgefallen ist das trotz vieler Neuerungen das deutsche Manual schneller aufholt als früher, ich finde nur noch wenige Unterschiede.
              Aber die von Dir im ersten Posting verlinkte Funktion fiel mir damals direkt ins Auge, auf sowas hatte ich lange gewartet! Wundert mich das es das erst jetzt gibt. Wenn DU jetzt eine Webseite parsen willst, geht das einfach mit

              preg_match("/meinetolleregex/",file_get_contents("http://www.server.de/file.html"))

              oder sowas, ich finde es schon praktisch im Gegensatz zu früher, mit fsockopen..., wobei die Anwendung sicher beschränkt ist, da ich nur bei fsockopen die volle Kontrolle über den gesendeten Header habe.

              Aber für Anfänger sicher eine gute Sache, nur das es noch ein wenig dauern wird bis die Massenhoster PHP 4.3 verwenden.

              Grüße
              Andreas

  4. Hallo,
    ich bin jetzt der Andreas der die Frage gestellt hat. :)

    Danke für die schnellen und vielen Antworten!!

    Andreas