Erhalten von Zeilenumbrüchen mit HTML
Beim Versuch, Zeilenumbrüche oder „rn“-Zeichen in HTML-Umbruchtags („
") stieß ein Benutzer trotz der Verwendung verschiedener Methoden auf Schwierigkeiten.
Methodenexploration
preg_replace():
<code class="php">$description = preg_replace('/\r?\n|\r/', '<br/>', $description);</code>
str_replace():
<code class="php">$description = str_replace(array("\r\n", "\r", "\n"), '<br/>', $description);</code>
nl2br():
<code class="php">$description = nl2br($description);</code>
Unerwartete Ergebnisse
Trotz dieser plausiblen Methoden blieben die Zeilenumbrüche im Text. Der Grund lag im unerwarteten Vorhandensein doppelter Zeilenumbrüche („rr“). Obwohl dies den Austausch nicht behindern sollte, sind weitere Untersuchungen erforderlich.
nl2br()-Funktion
Es ist wichtig, die Existenz von nl2br() zu beachten. -Funktion, die explizit „
“-Tags vor Zeilenumbruchzeichen einfügt.
<code class="php"><?php // Won't work $desc = 'Line one\nline two'; // Should work $desc2 = "Line one\nline two"; echo nl2br($desc); echo '<br/>'; echo nl2br($desc2); ?></code>
Text in doppelten Anführungszeichen
Darüber hinaus sollte besondere Aufmerksamkeit geschenkt werden Achten Sie auf die Verwendung von doppelten Anführungszeichen bei der Zuweisung des Textes zur Variablen.
<code class="php">$description = "Line one\nline two"; // Correct $description = 'Line one\nline two'; // Incorrect</code>
Dies liegt daran, dass einfache Anführungszeichen keine Escape-Sequenzen wie „n“ „erweitern“, was für die Interpretation von „neu“ von entscheidender Bedeutung ist Zeilenzeichen.
Das obige ist der detaillierte Inhalt vonWarum werden meine Newline-Zeichen nicht in HTML-Umbruch-Tags umgewandelt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!