php 过滤所有html标签
首先我们推荐filter_sanitize_string ,filter_sanitize_string 过滤器去除或编码不需要的字符.
这个过滤器删除那些对应用程序有潜在危害的数据,它用于去除标签以及删除或编码不需要的字符.
name:"string"
id-number:513
可能的选项或标志:
filter_flag_no_encode_quotes - 该标志不编码引号
filter_flag_strip_low - 去除 ascii 值在 32 以下的字符
filter_flag_strip_high - 去除 ascii 值在 32 以上的字符
filter_flag_encode_low - 编码 ascii 值在 32 以下的字符
filter_flag_encode_high - 编码 ascii 值在 32 以上的字符
filter_flag_encode_amp - 把 & 字符编码为 &
$var="<b>bill gates<b>";var_dump(filter_var($var, filter_sanitize_string));
第二个函数strip_tags,strip_tags() 函数剥去 html、xml 以及 php的标签.
语法:strip_tags(string,allow)
echo strip_tags("hello <b>world!</b>"); //hello world! function uh($str) { $farr = array( "/s+/", //过滤多余的空白 "/<(/?)(script|i?frame|style|html|body|title|link|meta|?|%)([^>]*?)>/isu", //过滤 <script 等可能引入恶意内容或恶意改变显示布局的代码,如果不需要插入flash等,还可 以加入<object的过滤 "/(<[^>]*)on[a-za-z]+s*=([^>]*>)/isu", //过滤网页的on事件 ); $tarr = array( " ", "<123>", //如果要直接清除不安全的标签,这里可以留空 "12", ); $str = preg_replace( $farr,$tarr,$str); return $str; }
教程地址:http://www.phprm.com/develop/fs4722.html
欢迎转载!但请带上文章地址^^