在php中html标签进行安全过滤,建议使用php正则来完成,简单高效。
也可以使用strip_tags函数,或比如过滤掉所有 A 标签:
echo preg_replace('|<(.*)a(.*)href(.*)>(.*)<(.*)a(.*)>|U','',$a);
 
//1,过滤所有html标签的正则表达式:  
</?[^>]+>  
  
//2,过滤所有html标签的属性的正则表达式:  
$html = preg_replace("/<([a-zA-Z]+)[^>]*>/","<1>",$html);  
  
//3,过滤部分html标签的正则表达式的排除式(比如排除<p>,即不过滤<p>):  
</?[^pP/>]+>  
  
//4,过滤部分html标签的正则表达式的枚举式(比如需要过滤<a><p><b>等):  
</?[aApPbB][^>]*>  
  
//5,过滤部分html标签的属性的正则表达式的排除式(比如排除alt属性,即不过滤alt属性):  
s(?!alt)[a-zA-Z]+=[^s]*  
  
//6,过滤部分html标签的属性的正则表达式的枚举式(比如alt属性):  
(s)alt=[^s]*