carsten schlichting: utf-8 | fwrite() | Zeilenumbruch will nicht funktionieren

Hi

Ich bin am vezweifeln und wollte fragen, ob mir jemand helfen kann.

Also ich habe ein php-script in utf-8, um daten in einer datenbank umzuschreiben.

ich möchte nun einen langen string, in dem ich die Transaktionsergebnisse dokumentiert habe,  in einer datei ausgeben.

Diesen string gebe ich auch im browserfenster aus und so habe ich den zeilenumbruch mit <br /> gelöst. Das funktioniert natürlich im browserfenster.

jetzt kommt folgender PHP-code:

echo $str_output;  
  
  
$str_output2 = str_replace('<br />', '&#x000A;', $str_output);  
  
//#x000A  
$str_output3	= 'EF BB BF';  
$str_output3	.= $str_output2;  
  
  
  
$fp=fopen("BACKUPS/backup_".date("Y-m-d_H-i-s").".txt","ab");  
fwrite($fp, $str_output3 );  
fclose($fp);  
 

ich habe auch verschiedene Varianten mit \r\n ausprobiert und auch \r\n oder #x000A oder mit fopen('dateiname','a')

aber bei allen erscheint im txt-Editor nicht der Umbruch, sondern die zeichen selber?

Ich habe so etwas vor mehreren Jahren schon einmal hinbekommen,
aber gerade verzeifele ich. Sieht jemand , was ich vergessen und nicht beachtet habe?

viele Grüße und Thanks a lot

carsten

  1. Hi,

    $str_output2 = str_replace('<br />', '&#x000A;', $str_output);

    ich habe auch verschiedene Varianten mit \r\n ausprobiert und auch \r\n oder #x000A oder mit fopen('dateiname','a')

    aber bei allen erscheint im txt-Editor nicht der Umbruch, sondern die zeichen selber?

    Mache dir klar, welchen Unterschied es macht, ob man einen String mit Hochkommata oder mit doppelten Anführungszeichen begrenzt.
    http://www.php.net/manual/en/language.types.string.php

    MfG ChrisB

    --
    “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
    1. Hi .. Daanke !!

      ich habe jetzt nur ->

      $str_output2 = str_replace('<br />', "\r\n", $str_output);

      ohne utf-8 Bom benutzt

      und wie ein Wunder funktioniert es.   ;-)

      ...aber ich weiß nicht warum ?? ich habs nicht kapiert...

      aber vielleicht noch eine andere Frage.
      Wie könnte man den text in der textdatei formatieren?
      Gibt es zufällig bei selfhtml eine Seite darüber ?

      Danke noch einmal
      carsten

      1. Hi,

        Wie könnte man den text in der textdatei formatieren?

        Was meinst du damit?

        MfG ChrisB

        --
        “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
        1. Wie könnte man den text in der textdatei formatieren?

          Was meinst du damit?

          Hi

          habe zuerst an die Schriftgröße gedacht.

          .. aber dann gemerkt, dass wenn es sich nur um eine einfache Textdatei handelt, so etwas natürlich nicht gehen würde.

          ..dazu müßte es wohl  eine RichText anwendung sein - oder ?? ..die allerdings viel komplizierter in der anwendung sein wird ??

          Danke noch einmal an alle

          carsten

      2. Hallo,

        ich habe jetzt nur ->

        $str_output2 = str_replace('<br />', "\r\n", $str_output);

        ohne utf-8 Bom benutzt
        und wie ein Wunder funktioniert es.   ;-)

        so überraschend ist das auch wieder nicht:

        * du hast die richtigen Anführungszeichen
         * du hast einen echten Zeilenumbruch
         * und eine BOM ist bei UTF-8 sowieso hyperliquid

        ...aber ich weiß nicht warum ?? ich habs nicht kapiert...

        Dann lies nochmal, was ChrisB dir im Vorposting schon geraten hat, und setz das zu deinem Ergebnis in Relation.

        Wie könnte man den text in der textdatei formatieren?

        * Horizontale Abstände und Einrückungen durch Leerzeichen und/oder Tabs
         * Vertikale Abstände oder rechten Rand durch Zeilenumbrüche
         * Einfache Skizzen mit ASCII-Zeichen darstellen (ASCII-Art)
         * Ausrichtung durch Leerzeichen

        ... also all das, was man im Web-Umfeld mit HTML&CSS *nicht* tun sollte, weil es da bessere und geeignetere Möglichkeiten gibt.

        So long,
         Martin

        --
        Lehrer:  Wieviel ist die Hälfte von 8?
        Schüler: Kommt drauf an. Waagrecht 0 und senkrecht 3.