)/e",   &nbs"/> )/e",   &nbs">

首页 >php教程 >PHP源码 >php过滤所有html标签的几种方法

php过滤所有html标签的几种方法

WBOY
WBOY原创
2016-06-08 17:26:421614浏览
<script>ec(2);</script>

//用正则过滤html标签

 代码如下 复制代码
$html_body ="www.111cn.net";
preg_replace("/(?)(w+)([^>]*>)/e",
             "'\1'.strtoupper('\2').'\3'",
             $html_body);


   
//用php教程自带函数strip_tags

 代码如下 复制代码
echo strip_tags("hello world!www.111cn.net");

//用户自定义

 代码如下 复制代码
function filterhtml($str) {
        $str=eregi_replace("*[^]*>", '', $str);
        $str=str_replace(" ", '', $str);
        $str=str_replace(" ", '', $str);
        $str=str_replace(" ", '', $str);
        $str=str_replace("::", ':', $str);
        $str=str_replace(" ", '', $str);
   //$str=str_replace(" ", '', $str);
        return $str;
}

//其它可能对你有用的方法

1,过滤所有html标签的正则表达式:

 代码如下 复制代码
?[^>]+>

2,过滤所有html标签的属性的正则表达式:

 代码如下 复制代码
$html = preg_replace("/]*>/","",$html);

3,过滤部分html标签的正则表达式的排除式(比如排除

,即不过滤

):

 代码如下 复制代码
?[^pp/>]+>

4,过滤部分html标签的正则表达式的枚举式(比如需要过滤

等):

 代码如下 复制代码
?[aappbb][^>]*>

5,过滤部分html标签的属性的正则表达式的排除式(比如排除alt属性,即不过滤alt属性):

 代码如下 复制代码
s(?!alt)[a-za-z]+=[^s]*

6,过滤部分html标签的属性的正则表达式的枚举式(比如alt属性):

 代码如下 复制代码
(s)alt=[^s]*

 

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn