問題
最近在Laravel項目中用到了百度編輯器,插入到數(shù)據(jù)庫我保存的是原始的html標(biāo)簽代碼,沒有進(jìn)行實體轉(zhuǎn)義。然后在修改的時候,需要讀取到數(shù)據(jù)庫中的數(shù)據(jù),進(jìn)行回顯,這時候竟然在編輯器里面顯示html標(biāo)簽代碼p>123/p>,這讓我很尷尬,因為以前在tp框架中也是這樣寫的,但是沒有問題。
搜索之路
在知道問題之后,我就開始找百度了,因為一開始的時候我并不知道是框架的原因,我以為是百度編輯器版本的原因,然后收到了許多答案,都是圍繞著htmlentities和html_entity_decode這兩個函數(shù)搞來搞去。我都有試過,但是都沒有用,然后這個問題就放下了。
正確方法
第二天我起來,感覺這個問題一定要解決,然后就搜索了看了Laravel官網(wǎng)的api,然后扎到blade模板這一節(jié),看到這個。
Blade {{ }} statements are automatically sent through PHP's htmlspecialchars function to prevent XSS attacks.
意思是:使用{{}}會自動使用php中的htmlspecialchars方法來轉(zhuǎn)義成實體,然后輸出。
顯示未轉(zhuǎn)義數(shù)據(jù)
Hello, {!! $name !!}.
然后試了一下,大功告成!
總結(jié)
雖然知識大家都懂,但是如果知識換一種方式來考驗我們,我們可能一下子并不能濾清思緒,總的來說還是基礎(chǔ)比較差,還得補補啊。
以上這篇淺談Laravel模板實體轉(zhuǎn)義帶來的坑就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
標(biāo)簽:自貢 通化 佳木斯 阿克蘇 郴州 寶雞 金華 香港
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《淺談Laravel模板實體轉(zhuǎn)義帶來的坑》,本文關(guān)鍵詞 淺談,Laravel,模板,實體,轉(zhuǎn)義,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。