Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapakah fungsi `nl2br()` saya tidak menggantikan baris baharu dengan ``?

Mengapakah fungsi `nl2br()` saya tidak menggantikan baris baharu dengan ``?

Linda Hamilton
Linda Hamiltonasal
2024-11-06 02:27:02137semak imbas

Why is my `nl2br()` function not replacing newlines with ``?

Menggantikan Baris Baharu atau rn dengan
: Panduan Penyelesaian Masalah

Berusaha untuk menggantikan baris baharu dengan
, anda mencuba pelbagai pendekatan menggunakan preg_replace(), str_replace(), dan nl2br() tetapi menghadapi tingkah laku yang tidak dijangka. Menganggap baris baharu berganda (rr) sebagai punca kegagalan yang tidak mungkin, anda meminta penjelasan.

Penyelesaian:

Seperti yang diserlahkan dalam respons, kaedah yang disyorkan untuk menukar baris baharu kepada
sedang menggunakan fungsi nl2br(). Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa ia memasukkan
tanda nama sebelum aksara baris baharu, bukan menggantikannya.

Contoh:

<code class="php">// Will not work
$desc = 'Line one\nline two';
// Should work
$desc2 = "Line one\nline two";

echo nl2br($desc);
echo '<br />';
echo nl2br($desc2);</code>

Pertimbangan Tambahan:

Jika nl2br( ) masih gagal untuk beroperasi seperti yang dimaksudkan, sahkan bahawa teks $desciption disertakan dalam dua kali ganda petikan.

Sebab:

Petikan tunggal tidak mengembangkan urutan pelarian, seperti n, manakala rentetan petikan dua. Percanggahan ini boleh membawa kepada tingkah laku yang tidak dijangka.

Petikan Dokumentasi:

"Nota: Tidak seperti sintaks petikan dua kali dan heredoc, pembolehubah dan urutan pelarian untuk aksara khas tidak akan dikembangkan apabila ia berlaku dalam rentetan petikan tunggal."

Atas ialah kandungan terperinci Mengapakah fungsi `nl2br()` saya tidak menggantikan baris baharu dengan ``?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn