php daddslashes()和 saddslashes()有哪些区别分析


Posted in PHP onOctober 26, 2012

//GPC过滤,自动转义$_GET,$_POST,$_COOKIE中的特殊字符,防止SQL注入攻击
$_GET = saddslashes($_GET);
$_POST = saddslashes($_POST);

下面是daddslashes()和 saddslashes()的例子eg: saddslashes function daddslashes($string, $force = 0, $strip = FALSE) { 
//字符串或数组 是否强制 是否去除 
//如果魔术引用未开启 或 $force不为0 
if(!MAGIC_QUOTES_GPC || $force) { 
if(is_array($string)) { //如果其为一个数组则循环执行此函数 
foreach($string as $key => $val) { 
$string[$key] = daddslashes($val, $force); 
} 
} else { 
//如果魔术引用开启或$force为0 
//下面是一个三元操作符,如果$strip为true则执行stripslashes去掉反斜线字符,再执行addslashes 
//$strip为true的,也就是先去掉反斜线字符再进行转义的为$_GET,$_POST,$_COOKIE和$_REQUEST $_REQUEST数组包含了前三个数组的值 
//这里为什么要将$string先去掉反斜线再进行转义呢,因为有的时候$string有可能有两个反斜线,stripslashes是将多余的反斜线过滤掉 
$string = addslashes($strip ? stripslashes($string) : $string); 
} 
} 
return $string; 
}eg: saddslashes function saddslashes($string) { if(!MAGIC_QUOTES_GPC){ 
if(is_array($string)) { //如果转义的是数组则对数组中的value进行递归转义 


foreach($string as $key => $val) { 



$string[$key] = saddslashes($val); 



} 
} else { 


$string = addslashes($string); //对单引号(')、双引号(")、反斜线(\)与 NUL(NULL 字符),进行转义 
} 
return $string; 
}else{ 
return $string; 
}

主要就是:
saddslashes可以实现对每一个数据进行转义处理了
function saddslashes($string) { 
if(is_array($string)) { 
foreach($string as $key => $val) { 
$string[$key] = saddslashes($val); 
} 
} else { 
$string = addslashes($string); 
} 
return $string; 
}
PHP 相关文章推荐
适用于php-5.2 的 php.ini 中文版[金步国翻译]
Apr 17 PHP
php获取服务器信息的实现代码
Feb 04 PHP
php中autoload的用法总结
Nov 08 PHP
php 购物车完整实现代码
Jun 05 PHP
WordPress中用于检索模版的相关PHP函数使用解析
Dec 15 PHP
PHP树-不需要递归的实现方法
Jun 21 PHP
PHP微信红包生成代码分享
Oct 06 PHP
php实现异步将远程链接上内容(图片或内容)写到本地的方法
Nov 30 PHP
yii2-GridView在开发中常用的功能及技巧总结
Jan 07 PHP
PHP在linux上执行外部命令的方法
Feb 06 PHP
Ubuntu上安装yaf扩展的方法
Jan 29 PHP
php通过各种函数判断0和空
Jul 04 PHP
PHP daddslashes 使用方法介绍
Oct 26 #PHP
Zend Studio去除编辑器的语法警告设置方法
Oct 24 #PHP
真正根据utf8编码的规律来进行截取字符串的函数(utf8版sub_str )
Oct 24 #PHP
php中检查文件或目录是否存在的代码小结
Oct 22 #PHP
php模拟js函数unescape的函数代码
Oct 20 #PHP
PHP 万年历实现代码
Oct 18 #PHP
php页面缓存ob系列函数介绍
Oct 18 #PHP
You might like
无需数据库在线投票调查php代码
2016/07/20 PHP
php下载文件,添加响应头的简单实例
2016/09/22 PHP
PHP设计模式之注册树模式分析
2018/01/26 PHP
setTimeout与setInterval在不同浏览器下的差异
2010/01/24 Javascript
用apply让javascript函数仅执行一次的代码
2010/06/27 Javascript
js类型检查实现代码
2010/10/29 Javascript
JavaScript 放大镜 放大倍率和视窗尺寸
2011/05/09 Javascript
javascript不同类型数据之间的运算的转换方法
2014/02/13 Javascript
使用Jquery实现每日签到功能
2015/04/03 Javascript
js随机生成字母数字组合的字符串 随机动画数字
2015/09/02 Javascript
深入理解JavaScript单体内置对象
2016/06/06 Javascript
jQuery实现带延时功能的水平多级菜单效果【附demo源码下载】
2016/09/21 Javascript
vue项目打包后上传至GitHub并实现github-pages的预览
2019/05/06 Javascript
webpack结合express实现自动刷新的方法
2019/05/07 Javascript
JavaScript函数式编程(Functional Programming)组合函数(Composition)用法分析
2019/05/22 Javascript
百度小程序之间的页面通信过程详解
2019/07/18 Javascript
vue简单练习 桌面时钟的实现代码实例
2019/09/19 Javascript
Python列表计数及插入实例
2014/12/17 Python
python连接字符串的方法小结
2015/07/13 Python
python中enumerate函数遍历元素用法分析
2016/03/11 Python
python Django批量导入不重复数据
2016/03/25 Python
python实现字典(dict)和字符串(string)的相互转换方法
2017/03/01 Python
Python模块WSGI使用详解
2018/02/02 Python
利用Python如何批量修改数据库执行Sql文件
2018/07/29 Python
对python产生随机的二维数组实例详解
2018/12/13 Python
网易有道2017内推编程题 洗牌(python)
2019/06/19 Python
详解10个可以快速用Python进行数据分析的小技巧
2019/06/24 Python
python自动生成model文件过程详解
2019/11/02 Python
python matplotlib:plt.scatter() 大小和颜色参数详解
2020/04/14 Python
Speedo速比涛中国官方网站:全球领先泳装运动品牌
2018/04/24 全球购物
Vertbaudet西班牙网上商店:婴儿服装、童装、母婴用品和儿童家具
2019/10/16 全球购物
俄罗斯最大的香水和化妆品网上商店:Randewoo
2020/11/05 全球购物
为什么group by 和order by会使查询变慢
2014/05/16 面试题
商学院大学生求职的自我评价
2014/03/12 职场文书
2014年置业顾问工作总结
2014/11/17 职场文书
开天辟地观后感
2015/06/09 职场文书