Memelihara Aksara Baris Baharu dengan HTML
Dalam percubaan untuk menukar baris baharu atau aksara "rn" ke dalam tag pemecahan HTML ("
"), pengguna menghadapi kesukaran walaupun menggunakan pelbagai kaedah.
Penerokaan Kaedah
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>
Keputusan Tidak Dijangka
Walaupun kaedah yang munasabah ini, baris baharu kekal dalam teks. Sebabnya terletak pada kehadiran baris baharu berganda ("rr") yang tidak dijangka. Walaupun ini tidak sepatutnya menghalang penggantian, ia memerlukan siasatan lanjut.
Fungsi nl2br()
Adalah penting untuk mengambil perhatian kewujudan nl2br() Fungsi , yang secara eksplisit memasukkan teg "
" sebelum aksara baris baharu.
<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>
Teks Petikan Dua Kali
Selain itu, perhatian khusus harus diberikan dibayar kepada penggunaan tanda petikan berganda apabila memperuntukkan teks kepada pembolehubah.
<code class="php">$description = "Line one\nline two"; // Correct $description = 'Line one\nline two'; // Incorrect</code>
Ini kerana petikan tunggal tidak 'mengembangkan' urutan melarikan diri, seperti 'n,' yang penting untuk mentafsir baharu aksara baris.
Atas ialah kandungan terperinci Mengapa Watak Baris Baharu Saya Tidak Menukar kepada Teg Pecah HTML?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!