首頁 > 後端開發 > php教程 > 為什麼我的換行符號沒有轉換為 HTML 中斷標記?

為什麼我的換行符號沒有轉換為 HTML 中斷標記?

Susan Sarandon
發布: 2024-11-04 20:18:02
原創
989 人瀏覽過

Why Are My Newline Characters Not Converting to HTML Break Tags?

使用HTML 保留換行符

嘗試將換行符或「rn」字元轉換為HTML 中斷標記("
" ),使用者使用各種方法都遇到了困難。

方法探討

  1. preg_replace():

    <code class="php">$description = preg_replace('/\r?\n|\r/', '<br/>', $description);</code>
    登入後複製
    preg_replace():
  2. preg_replace():

    <code class="php">$description = str_replace(array("\r\n", "\r", "\n"), '<br/>', $description);</code>
    登入後複製
  3. str_replace():

    <code class="php">$description = nl2br($description);</code>
    登入後複製
nl2br():


<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>
登入後複製

>意外的結果

儘管有這些看似合理的方法,換行符仍然保留在文本中。原因在於雙換行符(“rr”)的意外出現。雖然這不應該妨礙替換,但值得進一步調查。
<code class="php">$description = "Line one\nline two"; // Correct
$description = 'Line one\nline two'; // Incorrect</code>
登入後複製

nl2br() 函數重要的是要注意nl2br() 的存在 函數,它在換行符之前明確插入「」標籤。 雙引號文字此外,應特別注意在將文字分配給變數時使用雙引號。 這是因為單引號不會「擴展」轉義序列,例如“n”,這對於解釋 new 至關重要行字元。

以上是為什麼我的換行符號沒有轉換為 HTML 中斷標記?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板