本文目錄一覽:
php如何過濾編輯器的html標籤?
選擇1.將特殊符號進行轉換,可以用htmlspecialchars把變為“”等
選擇2.用正則表達式替換,將標籤都刪除:
$content=preg_replace(‘/\.+?\/’,”,$content);
用php過濾html部分標籤
$str=preg_replace(“/\s+/”, ” “, $str); //過濾多餘回車
$str=preg_replace(“/[ ]+/si”,””,$str); //過濾__(“”號後面帶空格)
$str=preg_replace(“/\!–.*?–/si”,””,$str); //注釋
$str=preg_replace(“/(\!.*?)/si”,””,$str); //過濾DOCTYPE
$str=preg_replace(“/(\/?html.*?)/si”,””,$str); //過濾html標籤
$str=preg_replace(“/(\/?head.*?)/si”,””,$str); //過濾head標籤
$str=preg_replace(“/(\/?meta.*?)/si”,””,$str); //過濾meta標籤
$str=preg_replace(“/(\/?body.*?)/si”,””,$str); //過濾body標籤
$str=preg_replace(“/(\/?link.*?)/si”,””,$str); //過濾link標籤
$str=preg_replace(“/(\/?form.*?)/si”,””,$str); //過濾form標籤
$str=preg_replace(“/cookie/si”,”COOKIE”,$str); //過濾COOKIE標籤
$str=preg_replace(“/(applet.*?)(.*?)(\/applet.*?)/si”,””,$str); //過濾applet標籤
$str=preg_replace(“/(\/?applet.*?)/si”,””,$str); //過濾applet標籤
$str=preg_replace(“/(style.*?)(.*?)(\/style.*?)/si”,””,$str); //過濾style標籤
$str=preg_replace(“/(\/?style.*?)/si”,””,$str); //過濾style標籤
$str=preg_replace(“/(title.*?)(.*?)(\/title.*?)/si”,””,$str); //過濾title標籤
$str=preg_replace(“/(\/?title.*?)/si”,””,$str); //過濾title標籤
$str=preg_replace(“/(object.*?)(.*?)(\/object.*?)/si”,””,$str); //過濾object標籤
$str=preg_replace(“/(\/?objec.*?)/si”,””,$str); //過濾object標籤
$str=preg_replace(“/(noframes.*?)(.*?)(\/noframes.*?)/si”,””,$str); //過濾noframes標籤
$str=preg_replace(“/(\/?noframes.*?)/si”,””,$str); //過濾noframes標籤
$str=preg_replace(“/(i?frame.*?)(.*?)(\/i?frame.*?)/si”,””,$str); //過濾frame標籤
$str=preg_replace(“/(\/?i?frame.*?)/si”,””,$str); //過濾frame標籤
$str=preg_replace(“/(script.*?)(.*?)(\/script.*?)/si”,””,$str); //過濾script標籤
$str=preg_replace(“/(\/?script.*?)/si”,””,$str); //過濾script標籤
$str=preg_replace(“/javascript/si”,”Javascript”,$str); //過濾script標籤
$str=preg_replace(“/vbscript/si”,”Vbscript”,$str); //過濾script標籤
$str=preg_replace(“/on([a-z]+)\s*=/si”,”On\\1=”,$str); //過濾script標籤
$str=preg_replace(“//si”,”#”,$str); //過濾script標籤,如javAsCript:alert(
清除空格,換行
function DeleteHtml($str)
{
$str = trim($str);
$str = strip_tags($str,””);
$str = ereg_replace(“\t”,””,$str);
$str = ereg_replace(“\r\n”,””,$str);
$str = ereg_replace(“\r”,””,$str);
$str = ereg_replace(“\n”,””,$str);
$str = ereg_replace(” “,” “,$str);
return trim($str);
}
過濾HTML屬性
1,過濾所有html標籤的正則表達式:
複製代碼 代碼如下:
/?[^]+
//過濾所有html標籤的屬性的正則表達式:
$html = preg_replace(“/([a-zA-Z]+)[^]*/”,”\\1″,$html);
3,過濾部分html標籤的正則表達式的排除式(比如排除p,即不過濾p):
複製代碼 代碼如下:
/?[^pP/]+
4,過濾部分html標籤的正則表達式的枚舉式(比如需要過濾apb等):
複製代碼 代碼如下:
/?[aApPbB][^]*
5,過濾部分html標籤的屬性的正則表達式的排除式(比如排除alt屬性,即不過濾alt屬性):
複製代碼 代碼如下:
\s(?!alt)[a-zA-Z]+=[^\s]*
6,過濾部分html標籤的屬性的正則表達式的枚舉式(比如alt屬性):
複製代碼 代碼如下:
(\s)alt=[^\s]*
php如何過濾html標籤,使用什麼函數?
strip_tags — 從字符串中去除 HTML 和 PHP 標記
語法:
string strip_tags ( string $str [, string $allowable_tags ] )
該函數返回給定的字符串 str 去除空字符、HTML 和 PHP 標記後的結果。
參數:
str 要去除的字符串
allowable_tags 可選參數,指定不被去除的字符列表。
例如:
$str = ‘a href=”” title=””測試/a’;
echo strip_tags($str);
結果:
測試
PHP如何去除HTML標籤
PHP 中有個 strip_tags 函數可以方便地去除 HTML 標籤。
echo strip_tags(“Hello bWorld/b”); // 去除 HTML、XML 以及 PHP 的標籤。
對於非標準的 HTML 代碼也能正確的去除:
原創文章,作者:BUJU,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/140257.html