Frage

Bestimmte Felder in unserer MySQL -DB scheinen Newline -Zeichen zu enthalten, sodass ich für einen einzelnen SQL -Anruf zurückgegeben werden kann, wenn ich sie ausgewählt habe:

Life to be sure is nothing much to lose

But young men think it is and we were young

Wenn ich die Zeilenunterbrechungen bei der Anzeige dieses Feldes auf einer Webseite bewahren möchte, ist die Standardlösung, um ein Skript zu schreiben, um ' n r' durch ein Br HTML -Tag zu ersetzen, oder gibt es einen besseren Weg?

Vielen Dank!

War es hilfreich?

Lösung

Annehmen PHP hier ...

nl2br() fügt hinzu <br /> für jeden \n. Vergessen Sie nicht, zuerst dem Inhalt zu entkommen, um XSS -Angriffe zu verhindern. Siehe unten:

<?php echo nl2br(htmlspecialchars($content)); ?>

Andere Tipps

Html ist a Markup Sprache. Unabhängig davon, wie viele Zeilenbräuche Sie in den Quellcode einfügen, werden Sie in der Präsentation nichts daraus sehen (natürlich unter der Annahme, dass Sie nicht verwenden <pre> oder white-space:pre). HTML verwendet das <br> Element zur Darstellung eines Linienausbruchs. Sie müssen also im Grunde tatsächlich die realen und unsichtbaren Linienbroks konvertieren, die von den Charakteren gekennzeichnet sind xA (Newline, Linefeed, LF, \n) und/oder xD (Kutschenrückgabe, Cr, \r) durch eine HTML <br> Element.

In den meisten Programmiersprachen können Sie dies einfach von a tun Zeichenfolge Ersetzen von "\n" durch "<br>".

Sie können es einpacken <pre> .. </pre>.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top