Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] fread() Problem

Einklappen

Neue Werbung 2019

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

  • [Erledigt] fread() Problem

    Hallo Leute,

    hab gerade ein Problem mmt fread(), zu dem ich keine Lösung bisher im Internet gefunden habe:

    ich möchte mit fread() eine Textdatei einlesen, das funktioniert auch, aber er beginnt mit dem Lesen erst ab einem im Dokument enthaltenen "->" Zeichen. Hier mein Code:

    $filename = "/module/index.txt";
    $file = fopen($filename, "r");
    $contents = fread($file, filesize($filename)); ## Fängt noch nicht am Anfang der Datei an
    fclose($file);

    jemand eine Idee, dass fread() die komplette Datei von Anfang bis Ende lesen kann?

    Ich verwene PHP 5.3.3 auf einem IIS 7.5 Server.

    Vielen Dank!

  • #2
    nun, wenn du das mittels fread liest, kannst du den sogenannten Dateizeiger (der Zeigt auf das Zeichen, ab wo gelesen wird) mit rewind EDIT : an den anfang stellen .. = Zeichen 0

    alternativ solltest du statt fread mal

    file_get_contents()

    probieren, wenn du sowieso die gesamte Datei in einen langen String liest
    "Irren ist männlich", sprach der Igel und stieg von der Drahtbürste [IMG]http://www.php.de/core/images/smilies/icon_lol.gif[/IMG]

    Kommentar


    • #3
      hi, danke für die Antwort.

      habs mit fseek probiert, leider ist das Ergebnis noch dasselbe:
      PHP-Code:
      $filename "/module/index.txt";
      $file fopen($filename"r");
      fseek($file,0);
      $contents fread($filefilesize($filename)); 
      fclose($file); 
      danke nochmal für die Hilfe.

      Kommentar


      • #4
        Diese Fehlverhalten kann ich mir nicht vorstellen. fseek ist da nicht erforderlich.

        Was passiert mit file_get_contents?

        Kommentar


        • #5
          mit file_get_contents habe ich dasselbe Ergebnis.

          Kommentar


          • #6
            Ich rate mal: in der Datei sind so schöne Zeichen wie < und du gibst den eingelesenen String einfach mit echo aus. Richtig? Wenn ja, empfehle ich mal hmlentities

            Kommentar


            • #7
              D'oh..

              der denkt dann du liest html-Tags ein ... das klappt bei der Ausgabe nicht richtig ... hätt ich auch sehen müssen
              "Irren ist männlich", sprach der Igel und stieg von der Drahtbürste [IMG]http://www.php.de/core/images/smilies/icon_lol.gif[/IMG]

              Kommentar


              • #8
                Vielen vielen Dank! Das war's!

                PHP-Code:
                echo htmlentities($str); 
                mehr hab ich nicht gebraucht, wünsch euch noch einen schönen Tag!

                Kommentar

                Lädt...
                X