用php過濾html里可能被利用來引入外部危險內容的代碼。有些時候,需要讓用戶提交html內容,以便豐富用戶發布的信息,當然,有些可能造成顯示頁面布局混亂的代碼也在過濾范圍內。
以下是引用片段:
#用戶發布的html,過濾危險代碼
function uh($str)
{
$farr = array(
"/s+/", //過濾多余的空白
"/<(/?)(script|i?frame|style|html|body|title|link|meta|?|/%)([^>]*?)>/isU", //過濾
"/(<[^>]*)on[a-zA-Z]+s*=([^>]*>)/isU",
//過濾javascript的on事件
);
$tarr = array(
" ",
"</1/2/3>", //如果要直接清除不安全的標簽,這里可以留空
"/1/2/3",
);
$str = PReg_replace( $farr,$tarr,$str);
return $str;
}
新聞熱點
疑難解答