PHP: Zeilenumbrüche ersetzten funktioniert nicht

  • Ich weiß, dieses Thema wurde schon ein paar mal behandelt, hab aber keine passende Antwort gefunden...
    Der Text eines Textareas wird mittels php in einer Datei gespeichert.
    Ich möchte Zeilenumbrüche einfach nur durch
    ersetzen.
    Wenn ich das mit dem nl2br-befehl mache funktioniert das zwar, aber in der Datei wird dennoch ein Absatz gemacht, was auf keinen Fall sein darf.
    Ebenso der Befehl str_replace("\n", "
    ", $inhalt) funktioniert nicht so wie es sollte Er führt zu folgendem:
    Zeile1
    Zeile2
    Die eckigen Klammern sollen einen Zeilenbruch darstellen, ihr kennt dieses Rechtecksymbol. Das darf auch auf keinen Fall drinstehen!
    Bitte helft mir!

  • *
    Er führt zu folgendem:
    Zeile1[]
    Zeile2
    *
    Sorry die eckigen Klammern hat er nicht angezeigt!

    Hier der ganze Code:
    $datei="text.txt";
    $inhalt = str_replace("\n","
    ", $inhalt); // oder halt $inhalt = nl2br($inhalt);
    $textdatei = fopen ($datei, "a+");
    fwrite($textdatei, $inhalt);
    fclose($textdatei);

  • In der Datei steht:
    Zeile1

    Zeile2

    Da soll aber stehen:
    Zeile1
    Zeile2

    Also ohne irgendeinen Zeilenumbruch.
    Danke für die schnellen Antworten!

  • Aus der doku (ja, die gibt es tatsächlich) zu nl2br

  • @sudeki:
    Damit die vernünftig ausgelesen werden kann, hat das schon seine Vorteile ;)
    Bei mir ging es nicht anders...

    @Bandit:
    Ja das is für mich allerdings net so einfach zu verstehen, bin nich sooo der pro...
    Aber hat mir weitergeholfen!

    @euch beide:

    Habs jetz geschafft mit:
    $inhalt = str_replace(array("\r\n"),"
    ", $inhalt);

    Vielen Dank!

  • Code
    $inhalt = str_replace(array("\r\n"),"
    ", $inhalt);


    Schöner blödsinn, was soll dabei das array? Benutze die funktion, die ich dir gepostet habe oder zumindest $array = array("\r\n", "\n\r", "\n", "\r");