用php过滤危险html代码的函数


Posted in PHP onJuly 22, 2008

#用户发布的html,过滤危险代码 
function uh($str) 

$farr = array( 
"/\\s+/", //过滤多余的空白 
"/<(\\/?)(scrīpt|i?frame|style|html|body|title|link|meta|\\?|\\%)([^>]*?)>/isU", //过滤 <scrīpt 等可能引入恶意内容或恶意改变显示布局的代码,如果不需要插入flash等,还可以加入<object的过滤 
"/(<[^>]*)on[a-zA-Z]+\\s*=([^>]*>)/isU", //过滤javascrīpt的on事件 

); 
$tarr = array( 
" ", 
"<\\\\1\\\\2\\\\3>", //如果要直接清除不安全的标签,这里可以留空 
"\\\\1\\\\2", 
); 

$str = preg_replace( $farr,$tarr,$str); 
return $str; 
}

PHP 相关文章推荐
PHP与javascript对多项选择的处理
Oct 09 PHP
深入了解php4(2)--重访过去
Oct 09 PHP
探讨:使用XMLSerialize 序列化与反序列化
Jun 08 PHP
php环境下利用session防止页面重复刷新的具体实现
Jan 09 PHP
PHP利用header跳转失效的解决方法
Oct 24 PHP
php的ddos攻击解决方法
Jan 08 PHP
WordPress用户登录框密码的隐藏与部分显示技巧
Dec 31 PHP
php pthreads多线程的安装与使用
Jan 19 PHP
10个对初学者非常有用的PHP技巧
Apr 06 PHP
yii插入数据库防并发的简单代码
May 27 PHP
PHP实现创建微信自定义菜单的方法示例
Jul 14 PHP
PHP扩展mcrypt实现的AES加密功能示例
Jan 29 PHP
php socket方式提交的post详解
Jul 19 #PHP
php minixml详解
Jul 19 #PHP
php正则校验用户名介绍
Jul 19 #PHP
PHP批量生成缩略图的代码
Jul 19 #PHP
Discuz 模板引擎的封装类代码
Jul 18 #PHP
PHP令牌 Token改进版
Jul 18 #PHP
php下intval()和(int)转换使用与区别
Jul 18 #PHP
You might like
第十节--抽象方法和抽象类
2006/11/16 PHP
PHP Header用于页面跳转要注意的几个问题总结
2008/10/03 PHP
PHP+JS实现大规模数据提交的方法
2015/07/02 PHP
PHP Include文件实例讲解
2019/02/15 PHP
判断多个input type=file是否有已经选择好文件的代码
2012/05/23 Javascript
通过jQuery源码学习javascript(一)
2012/12/27 Javascript
javascript对下拉列表框(select)的操作实例讲解
2013/11/29 Javascript
两个select多选模式的选项相互移动(示例代码)
2014/01/11 Javascript
JavaScript设计模式之外观模式介绍
2014/12/28 Javascript
JavaScript中setUTCMilliseconds()方法的使用详解
2015/06/12 Javascript
javascript实现树形菜单的方法
2015/07/17 Javascript
浅谈js的ajax的异步和同步请求的问题
2016/10/07 Javascript
Angularjs处理页面闪烁的解决方法
2017/03/09 Javascript
浅谈js基础数据类型和引用类型,深浅拷贝问题,以及内存分配问题
2017/09/02 Javascript
浅谈Angular2 模块懒加载的方法
2017/10/04 Javascript
Vue.js 中取得后台原生HTML字符串 原样显示问题的解决方法
2018/06/10 Javascript
jQuery使用each遍历循环的方法
2018/09/19 jQuery
微信小程序新闻网站详情页实例代码
2020/01/10 Javascript
vue+springboot图片上传和显示的示例代码
2020/02/14 Javascript
JavaScript实现消消乐的源代码
2021/01/12 Javascript
[01:57]2018年度DOTA2最具潜力解说-完美盛典
2018/12/16 DOTA
基于并发服务器几种实现方法(总结)
2017/12/29 Python
python使用tkinter库实现五子棋游戏
2019/06/18 Python
Python 转换文本编码实现解析
2019/08/27 Python
pycharm 激活码及使用方式的详细教程
2020/05/12 Python
HTML5自定义元素播放焦点图动画的实现
2019/09/25 HTML / CSS
解释一下ArrayList Vector和LinkedList的实现和区别
2013/04/26 面试题
汇源肾宝广告词
2014/03/20 职场文书
房屋租赁合同补充协议
2014/10/11 职场文书
2014年发展党员工作总结
2014/11/12 职场文书
欠款纠纷起诉状
2015/05/19 职场文书
小学运动会宣传稿
2015/07/23 职场文书
Golang二维数组的使用方式
2021/05/28 Golang
Python import模块的缓存问题解决方案
2021/06/02 Python
学会Python数据可视化必须尝试这7个库
2021/06/16 Python
为了顺利买到演唱会的票用Python制作了自动抢票的脚本
2021/10/16 Python