用php过滤危险html代码的函数
#用户发布的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 安全过滤函数代码
复制代码 代码如下: //安全过滤输入[jb] function check_str($string, $isurl = false) { $string = preg_replace('/[\\x00-\\x08\\x0B\\x0C\\x0E-\\x1F]/','',$string); $string = str_replace(array("\0","%00","\r"),'',$string); empty($isurl) &&am
-
php HtmlReplace输入过滤安全函数
复制代码 代码如下: // $rptype = 0 表示仅替换 html标记 // $rptype = 1 表示替换 html标记同时去除连续空白字符 // $rptype = 2 表示替换 html标记同时去除所有空白字符 // $rptype = -1 表示仅替换 html危险的标记 function HtmlReplace($str,$rptype=0) { $str = stripslashes($str); if($rptype==0) { $str = htmlspecialchar
-
php过滤XSS攻击的函数
下面的函数可以用来过滤用户的输入,保证输入是XSS安全的.具体如何过滤,可以参看函数内部,也有注释. 复制代码 代码如下: <?phpfunction RemoveXSS($val) { // remove all non-printable characters. CR(0a) and LF(0b) and TAB(9) are allowed // this prevents some character re-spacing such as <java\0script&g
-
php中使用array_filter()函数过滤空数组的实现代码
今天在翻看手册查询array_filter()的使用细节时,看到了个小关键点:If no callback is supplied, all entries of input equal to FALSE (see converting to boolean) will be removed. 如果没有给出回调函数,所有的等于 FALSE 的元素将会被移除掉,这不正好可以用来过滤一些有空元素的数组吗?连忙写个例子测试一下想法: 复制代码 代码如下: $entry = array( 0 => '蓝
-
PHP字符过滤函数去除字符串最后一个逗号(rtrim)
首先分别解释下, trim过滤字符串两端,rtrim过滤字符串尾部,=chop()ltrim过滤字符串首部. 过滤字符串中键的咚咚就只能用str_replace咯.举个例子说明下, PHP代码 复制代码 代码如下: $str = '123,333,234,'; echo rtrim($str, ','); rtrim实例代码2 复制代码 代码如下: <?php$text = "\t\tThese are a few words :) ... ";$trimmed = rtrim
-
几个有用的php字符串过滤,转换函数代码
nl2br();// \n to addslashes(); stripslashes();//对数据库操作时,转义特殊字符 chop();//除去字符串右边空格 trim();//除去字符串中所有空格 ltrim();//除去字符串左边空格 htmlspecialchars();//转换'$','"','<','>'为相应的html实体 htmlentities();//转换所有html标记为相应的html实体 array explode(string separator, str
-
PHP中字符安全过滤函数使用小结
在WEB开发过程中,我们经常要获取来自于世界各地的用户输入的数据.但是,我们"永远都不能相信那些用户输入的数据".所以在各种的Web开发语言中,都会提供保证用户输入数据安全的函数.在PHP中,有些非常有用并且方便的函数,它们可以帮助你防止出现像SQL注入攻击,XSS攻击等问题. 1. mysql_real_escape_string() 这个函数曾经对于在PHP中防止SQL注入攻击提供了很大的帮助,它对特殊的字符,像单引号和双引号,加上了"反斜杠",确保用户的输入在
-
php下过滤html代码的函数 提高程序安全性
以下为过滤HTML代码的函数: 复制代码 代码如下: function ihtmlspecialchars($string) { if(is_array($string)) { foreach($string as $key => $val) { $string[$key] = ihtmlspecialchars($val); } } else { $string = preg_replace('/&((#(\d{3,5}|x[a-fA-F0-9]{4})|[a-zA-Z][a-z0-9]{
-
比较好用的PHP防注入漏洞过滤函数代码
复制代码 代码如下: <?PHP //PHP整站防注入程序,需要在公共文件中require_once本文件 //判断magic_quotes_gpc状态 if (@get_magic_quotes_gpc ()) { $_GET = sec ( $_GET ); $_POST = sec ( $_POST ); $_COOKIE = sec ( $_COOKIE ); $_FILES = sec ( $_FILES ); } $_SERVER = sec ( $_SERVER ); functi
-
php下过滤HTML代码的函数
/*---------------------- 过滤HTML代码的函数 -----------------------*/ function htmlEncode($string) { $string=trim($string); $string=str_replace("&","&",$string); $string=str_replace("'","'",$string);
-
php常用的安全过滤函数集锦
虽然各种开发框架给我们提供了很好的安全的处理方式,但是,我们还是要注意一下安全问题的. 原因简单:很多小的功能和项目是用不到框架的,我们需要自己解决安全问题! ①常用的安全函数有哪些: 复制代码 代码如下: mysql_real_escape_string() addslashes() ②这些函数的作用: mysql_real_escape_string()和addslashes()函数都是对数据中的 单引号.双引号进行转义!也就是防止sql注入! 但是mysql_real_escape_
随机推荐
- 详解AngularJS中$http缓存以及处理多个$http请求的方法
- 详解Python中 __get__和__getattr__和__getattribute__的区别
- MySQL 4.1/5.0/5.1/5.5/5.6各版本的主要区别整理
- Struts2实现单文件或多文件上传功能
- 通过隐藏iframe实现无刷新上传文件操作
- 发一个分页的js
- 用JavaScript获取DOM元素位置和尺寸大小的方法
- python调用新浪微博API项目实践
- EasyUI Datebox 日期验证之开始日期小于结束时间
- 快速学习jQuery插件 jquery.validate.js表单验证插件使用方法
- jquery马赛克拼接翻转效果代码分享
- 文件上传的几个示例分享【推荐】
- jQuery源码分析-03构造jQuery对象-源码结构和核心函数
- 基于JS如何实现给字符加千分符(65,541,694,158)
- apache中伪静态配置和使用(Apache虚拟主机下Discuz伪静态)
- Android应用开发工程目录作用介绍
- 使用ViewPager实现左右循环滑动及滑动跳转
- 关于javascript sort()排序你可能忽略的一点理解
- java IO流将一个文件拆分为多个子文件代码示例
- php微信公众号开发之关键词回复