Announcement

Collapse
No announcement yet.

UTF-8-Datei zeilenweise einlesen?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • UTF-8-Datei zeilenweise einlesen?

    Hallo,

    ich bin kein grosser PHP-Könner und Google hat mir auch nicht weiterhelfen können, verzeiht mir also diese Anfängerfrage: Ich habe eine UTF-8-kodierte Textdatei, die in PHP eingelesen und ausgegeben werden soll. Ich hab einige Möglichkeiten, UTF-8 einzulesen, gefunden, aber keine, die es mir erlaubt, die Datei zeilenweise einzulesen.

    Momentan mache ich das so:

    $lines = file('../news.xml');
    foreach ($lines as $line_num => $line) {
    ...}

    Aber wie gesagt, dann stimmt das Encoding der eingelesenen Texte nicht mehr.

    Bin dankbar für jeden Tip.

  • #2
    Hallo,

    ich vermute mal eher das das Encoding der Weiterverarbeitung nicht stimmt. Die Funktion file liest einen UTF8-Text sauber ein. Dieser muß natürlich dann auch als UTF8 an den Client (Browser) geschickt werden.

    Was führt dich denn zu der Annahme dass das Encoding beim Einlesen verändert wird?

    Gruß Falk
    Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

    Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

    Comment


    • #3
      Hallo Falk,

      folgende Prozedur: Ich lese die UTF-8 Datei ein, ergänze ein paar Zeilen (ebenfalls in UTF-8), und schreibe das Ganze dann wieder weg.

      Wenn ich dann in die Datei schaue, dann sind die neu hinzugefügten Zeilen absolut OK - aber eben nicht die, die zuvor über "file" eingelesen wurden. Deswegen nehme ich an, dass es eigentlich nur am Einlesen liegen kann.

      Die Ausgabe im Browser klappt einwandfrei - aber eben nur mit den "neu" hinzugefügten Zeilen, die aus der Datei sind kaputt.

      Ich hab das Ganze jetzt mal testweise auf ISO umgestellt - und siehe da, jetzt klappt alles einwandfrei.

      Comment


      • #4
        Hallo,

        hast du mal probiert mit
        PHP Code:
        ini_set('default_charset''UTF8'); 
        das aktuelle Charakterset auf utf8 zu ändern?

        Gruß Falk
        Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

        Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

        Comment

        Working...
        X