2014年7月3日 星期四

str_replace parse newline

從資料庫抓一段文字出來後,如果用來顯示的 widget 或其他東西,會讓空白、換行...等沒有

效果時,可以考慮使用

str_replace("要被替換的字", "替換的字", "字串", [次數])  (次數:optional)

把這些字元換成可以被解析的

ex:

str_replace("\n","<br/>",$text);

str_replace(" ","&nbsp;",$text);

在使用時,要注意雙引號 (") 和單引號 (') 的問題,

被雙引號括住:裡面的內容會被 PHP 解析,ex : 變數取得變數值;"\n" 解析成 newline

被單引號括住:裡面的內容不會被 PHP 解析,直接當成字串

如上例的 str_replace("\n","<br/>",$text); ,如果改用 str_replace('\n',"<br/>",$text); ,function 會

去尋找內容為 \n ,而不是找 newline。

空白則沒有這個問題,str_replace(" ","&nbsp;",$text); 和 str_replace(' ',"&nbsp;",$text); 都可以

正確抓到空白。

沒有留言:

張貼留言