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

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

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

WBOY
WBOYOriginal
2016-06-08 17:26:421640browse
<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]*

 

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn