php完全過(guò)濾HTML,JS,CSS等標(biāo)簽
更新時(shí)間:2009年01月16日 16:35:34 作者:
全是正則過(guò)濾HTML標(biāo)簽,但是今天自己拿來(lái)用都不好用了.原因??就是標(biāo)簽轉(zhuǎn)義了.
記得以前寫過(guò)一篇文章
php有效的過(guò)濾html標(biāo)簽,js代碼,css樣式標(biāo)簽:
<?php
$str = preg_replace( "@<script(.*?)</script>@is", "", $str );
$str = preg_replace( "@<iframe(.*?)</iframe>@is", "", $str );
$str = preg_replace( "@<style(.*?)</style>@is", "", $str );
$str = preg_replace( "@<(.*?)>@is", "", $str );
?>
,全是正則過(guò)濾HTML標(biāo)簽,但是今天自己拿來(lái)用都不好用了.原因??就是標(biāo)簽轉(zhuǎn)義了.比如<br >.頁(yè)面上顯示的是這個(gè).但是源文件卻顯示的像這樣:”——但是我們還是可以處理,先把內(nèi)容全部反編譯過(guò)來(lái).再過(guò)濾就行了.
$str= htmlspecialchars_decode($str);
用htmlspecialchars_decode這個(gè)函數(shù)的就是把源文件轉(zhuǎn)成<>這樣的標(biāo)簽.然后”:
$str= preg_replace("/<(.*?)>/","",$str);
php有效的過(guò)濾html標(biāo)簽,js代碼,css樣式標(biāo)簽:
復(fù)制代碼 代碼如下:
<?php
$str = preg_replace( "@<script(.*?)</script>@is", "", $str );
$str = preg_replace( "@<iframe(.*?)</iframe>@is", "", $str );
$str = preg_replace( "@<style(.*?)</style>@is", "", $str );
$str = preg_replace( "@<(.*?)>@is", "", $str );
?>
,全是正則過(guò)濾HTML標(biāo)簽,但是今天自己拿來(lái)用都不好用了.原因??就是標(biāo)簽轉(zhuǎn)義了.比如<br >.頁(yè)面上顯示的是這個(gè).但是源文件卻顯示的像這樣:”——但是我們還是可以處理,先把內(nèi)容全部反編譯過(guò)來(lái).再過(guò)濾就行了.
復(fù)制代碼 代碼如下:
$str= htmlspecialchars_decode($str);
用htmlspecialchars_decode這個(gè)函數(shù)的就是把源文件轉(zhuǎn)成<>這樣的標(biāo)簽.然后”:
復(fù)制代碼 代碼如下:
$str= preg_replace("/<(.*?)>/","",$str);
您可能感興趣的文章:
- XML、HTML、CSS與JS的區(qū)別整理
- HTML+CSS+JS實(shí)現(xiàn)完美兼容各大瀏覽器的TABLE固定列
- 用html+css+js實(shí)現(xiàn)的一個(gè)簡(jiǎn)單的圖片切換特效
- JavaScript改變HTML元素的樣式改變CSS及元素屬性
- js實(shí)現(xiàn)單一html頁(yè)面兩套css切換代碼
- js+html+css實(shí)現(xiàn)鼠標(biāo)移動(dòng)div實(shí)例
- JavaScript/jQuery、HTML、CSS 構(gòu)建 Web IM 遠(yuǎn)程及時(shí)聊天通信程序
- php中去除所有js,html,css代碼
- 詳解關(guān)于html,css,js三者的加載順序問(wèn)題
相關(guān)文章
Swoole 5將移除自動(dòng)添加Event::wait()特性詳解
這篇文章主要給大家介紹了關(guān)于Swoole 5將移除自動(dòng)添加Event::wait()特性的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Swoole5具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07
php實(shí)現(xiàn)模擬post請(qǐng)求用法實(shí)例
這篇文章主要介紹了php實(shí)現(xiàn)模擬post請(qǐng)求用法,分析了php模擬post請(qǐng)求的三種常見(jiàn)用法,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-07-07
php實(shí)現(xiàn)統(tǒng)計(jì)郵件大小的方法
以下是對(duì)使用php實(shí)現(xiàn)統(tǒng)計(jì)郵件大小的方法進(jìn)行了分析介紹,需要的朋友可以過(guò)來(lái)參考下2013-08-08
PHP學(xué)習(xí)之?dāng)?shù)組值的操作
PHP中,用list來(lái)析取數(shù)組中的值,如list($a, $b) = $array。2011-04-04
簡(jiǎn)單的php寫入數(shù)據(jù)庫(kù)類代碼分享
簡(jiǎn)單的php寫入數(shù)據(jù)庫(kù)類代碼分享,學(xué)習(xí)php的朋友可以參考下。2011-07-07
PHP 緩存實(shí)現(xiàn)代碼及詳細(xì)注釋
PHP緩存實(shí)現(xiàn),實(shí)現(xiàn)了apc和文件緩存,繼承Cache_Abstract即可實(shí)現(xiàn)調(diào)用第三方的緩存工具。參考shindig的緩存類和apc。2010-05-05
PHP+Ajax檢測(cè)用戶名或郵件注冊(cè)時(shí)是否已經(jīng)存在實(shí)例教程
這篇文章主要介紹了PHP+Ajax檢測(cè)用戶名或郵件注冊(cè)時(shí)是否已經(jīng)存在實(shí)例教程,是非常常見(jiàn)的一個(gè)重要功能,常用于論壇注冊(cè)部分或會(huì)員注冊(cè)部分,需要的朋友可以參考下2014-08-08
ThinkPHP跳轉(zhuǎn)頁(yè)success及error模板實(shí)例教程
這篇文章主要介紹了ThinkPHP跳轉(zhuǎn)頁(yè)success及error模板實(shí)例教程,可以幫助初學(xué)者進(jìn)一步熟悉ThinkPHP的頁(yè)面跳轉(zhuǎn)流程,需要的朋友可以參考下2014-07-07

