daddslashes()与saddslashes()在php中有什么不同?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
//GPC过滤,自动转义$ _GET, $ _POST,美元_COOKIE中的特殊字符,防止SQL注入攻击
$ _GET=saddslashes ($ _GET);
$ _POST=saddslashes ($ _POST);
代码如下:
下面是daddslashes()和saddslashes()的例子如:saddslashes函数daddslashes(字符串,力=0美元,美元=FALSE) {
//字符串或数组是否强制是否去除
//如果魔术引用未开启或美元力不为0
(!MAGIC_QUOTES_GPC | | $) {
如果(is_array ($ string)){//如果其为一个数组则循环执行此函数
foreach(字符串作为关键美元=比;美元val) {
$ string [$ key]=daddslashes (val,迫使美元);
其他}
} {
//如果魔术引用开启力为0美元或
//下面是一个三元操作符,如果带美元为真则执行stripslashes去掉反斜线字符,再执行addslashes
//美元地带为真实的,也就是先去掉反斜线字符再进行转义的为$ _GET, $ _POST, _COOKIE美元和$ _REQUEST $ _REQUEST数组包含了前三个数组的值
//这里为什么要将美元字符串先去掉反斜线再进行转义呢,因为有的时候美元字符串有可能有两个反斜线,stripslashes是将多余的反斜线过滤掉
$ string=addslashes(带美元?stripslashes(字符串):$ string);
}
}
返回$字符串;
}如:saddslashes函数saddslashes ($ string){如果(! MAGIC_QUOTES_GPC) {
如果(is_array ($ string)){//如果转义的是数组则对数组中的值进行递归转义
foreach(字符串作为关键美元=比;美元val) {
$ string [$ key]=saddslashes (val);
其他}
} {
$ string=addslashes ($ string);//对单引号(& # 39;),双引号(“),反斜线(\)与NUL零字(符),进行转义
}
返回$字符串;其他
} {
返回$字符串;
}
主要就是:
saddslashes可以实现对每一个数据进行转义处理了
代码如下:
函数saddslashes ($ string) {
如果(is_array ($ string)) {
foreach(字符串作为关键美元=比;美元val) {
$ string [$ key]=saddslashes (val);
其他}
} {
$ string=addslashes ($ string);
}
返回$字符串;
}
看完上述内容,你们掌握daddslashes()与saddslashes()在php中有什么不同的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!