我在用戶提交的表單上有一個textarea字段,它會被保存到MySQL數據庫中。當我檢索值時,我運行nl2br將換行符轉換爲br標籤。然後我用str_replace用p標籤替換雙br。這個問題沒有被替代。我一遍又一遍地看了一遍,只是無法弄清楚什麼是錯的。str_replace for br tags not working
下面是HTML輸出:
Windows XP Home/Professional
<br />(32 and 64 bit)
<br />
<br />Test Operating System 2
<br />(32 and 64 bit)
<br />
<br />Test Operating System 3
<br />(64 bit)
這裏是我的PHP:
$FORMATTED = str_replace("<br /><br />", "</p><p>", $SUPPORTED_PLATFORMS);
$ FORMATTED的輸出看上去完全一樣,上面的HTML輸出。我基本上想用p標籤替換所有背對背的br標籤,並將所有單標籤都按照它們的方式放置。
謝謝!
你有'
\ r \ n
'還是在 「HTML」 類似的輸出。不要相信你在瀏覽器呈現的視圖中看到的內容。它會騙你。總是首先檢查'view source',並且/或者捕獲文本並通過十六進制編輯器運行它,以查看字符串中的內容。 –
你應該使用正則表達式替換連續的'br'標籤。 'preg_replace('/
\ s *
','
',$ SUPPORTED_PLATFORMS);''s'替換任何空格字符 – jaudette
Thanks @MarcB。我發佈的HTML來自查看源,這是我感到困惑的地方。那麼,就像在我的str_replace中的br之間添加\ r \ n一樣簡單?我現在可以嘗試.... – Jason