URL: https://www.overclockers.at/coding-stuff/php_zeilenumbruch_43554/page_2 - zur Vollversion wechseln!
1. Bsp: Und was machst du, wenn du eine Textdatei in HTML ausgeben willst?
2. Bsp: Stell dir vor, du hats einen einfachen Text, den du irgendwo eu einer Page mit echo $text; ausgibst. Der Text ist in einer mySQL-Datenbank gespeichert, und alle User mit berechtigung können den Text editieren.
Beim editieren macht man das über ein herkömmliches, mehrzeiliges html-Textfeld. Soll jetzt der Text auf der Seite so aussehen wie im Textfeld, muss man überall <br> einbauen - das ist nicht gerade übersichtlich - ganz zu schweigen vom Userkomfort. Also baust du eine Funktion ein, die bevor der Text in der DB gespeichert wird, alle \n zu <br> umwandelt. Der nächste User der einen Rechtschreibfehler entdeckt hat, will den Text editieren - und bekommt ein html/normaltext-Mischmasch. Jetzt kannst wieder zurückumwandeln usw.
Hättest du statt dem echo $text; ein echo nl2br($text); verwendet, hättest du dir das alles gespart
Das Sezenario hab ich oft genug bei Clanpages gesehn, die auf der Indexpage ihre Clanliga/Clanwartermine haben. Und genau das hab ich bei unserer Clanpage umgesetzt
PS: Das 2. Beispiel ist wahrscheinlich saudumm, aber mir is nix gescheiteres eingefallen
Zitat von KaZaaPS: Das 2. Beispiel ist wahrscheinlich saudumm, aber mir is nix gescheiteres eingefallen
Moment! Das heisst mit der Funktion wird das tatsächlich gedrückte "Enter" für eine Zeilenumbruch auch in html dargestellt? Das wär praktisch. Ich habe das so verstanden das du das so machen must
text text text text text text text text text text/n
text text text text text text text text text text/n
Wie funktionert des denn hier im Forum?
Im Forum wahrscheinlich genau so... ähm, da wärn wir dann beim 3. Beispiel
\n entspricht dem "Enterzeichen", stimmt.
Zitat von KaZaaIm Forum wahrscheinlich genau so... ähm, da wärn wir dann beim 3. Beispiel
\n entspricht dem "Enterzeichen", stimmt.
Das \n ist nur ein Platzhalter für eine nue Zeile und wird nicht als \n, sondern eben als neue Zeile ausgegeben. Du könntest jetzt statt der Entertase nur noch \n's verwenden
Du kannst es ja einfach probieren:
Code: PHP<?php $string1 = "Zeile1-Zeile1-Zeile1-Zeile1 Zeile2-Zeile2-Zeile2-Zeile2"; $string2 = "Zeile1-Zeile1-Zeile1-Zeile1\nZeile2-Zeile2-Zeile2-Zeile2"; echo "<b>Vorher:</b><br>"; echo "$string1<p>"; echo "$string2<p>"; $string1 = nl2br($string1); $string2 = nl2br($string2); echo "<b>Nacher:</b><br>"; echo "$string1<p>"; echo "$string2<p>"; ?>
Die Funktion des /n is komplett klar(is ja in c auch net anders). Was net klar war(ist) das die Funktion auch ohne /n und nur mit einme Enter den Zeilenumbruch in ein <br> verwandelt. Das ist wirklich sinnvoll.
Zitat von KaZaahttp://home.pages.at/kazaa/nl2br.php
Zitat von alexsbDie Funktion des /n is komplett klar(is ja in c auch net anders). Was net klar war(ist) das die Funktion auch ohne /n und nur mit einme Enter den Zeilenumbruch in ein <br> verwandelt.
Zitat von Simonis das a fehler in deiner php-version, oder wieso macht der statt am "<br>" ein "<br />" ???
das is doch nicht html-konform, oder.
komisch.
^Zitat von Maxx666das dürfte schon passen, scheint nämlich xhtml konform zu sein.
ausserdem hats mein browser gechecked.
-> http://selfhtml.teamone.de/html/text/zeilenumbruch.htm
sollte eigentlich kompatibel sein, da ein unbekanntes attribut in einem tag von einem browser prinzipiell ignoriert wird. wenn man den code aber noch im oldschoolstyle händisch schreibt, verzichtet ma auf den slash "/" aber meistens, da es doch etwas mühsam wird, das bei jedem <br> oder so auszutippen, denn es gibt noch einige tags, die von haus aus auch ohne attribute sinnvoll sind.
Zitat von manalishisollte eigentlich kompatibel sein, da ein unbekanntes attribut in einem tag von einem browser prinzipiell ignoriert wird. wenn man den code aber noch im oldschoolstyle händisch schreibt, verzichtet ma auf den slash "/" aber meistens, da es doch etwas mühsam wird, das bei jedem <br> oder so auszutippen, denn es gibt noch einige tags, die von haus aus auch ohne attribute sinnvoll sind.
händisch is eh l33t
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025