問題:使用Thinkphp5.1 開發的時候顯示CKEditor保存的內容不符合預期。
希望的樣子,肯定是不顯示<p><b>等標簽,而是下面的樣子。
因為剛開始使用TP5.1和CKEditor,所以遇到問題有點懵。立馬就去找官方文檔,但是文檔很多,不知從何看起。
這個問題其實與CKEditor沒有任何關系,因為在網頁編輯器的內容保存到數據庫就是帶標簽的,而前台就是現實帶標簽的內容,似乎一點問題都沒有。
突然,靈光乍現,是不是HTML轉義的問題!果然,TP5.1在使用模板標簽現實內容的時候默認會做htmlspecialchars()!
知道了原因,那么如何解決呢?用htmlspecialchars_decode() 反轉義嗎? 當然不是!
<div class="retheader">{$data.name}的查詢結果如下:</div> <div class="ret">{$data.desc|raw}</div>
正確和簡單的方式是在頁面中加一個"|raw" 即可! 這個解決方式非常簡單,但是如果不知道的人,也是會很傷腦筋哦!記錄且分享一下!
--------------------------------------------------------------
歡迎交流
個人博客:www.wxp123.me