找回密码
 注册账号

QQ登录

只需一步,快速开始

《泰拉瑞亚下载-1.4.2.3版》 泰拉瑞亚服务器 - MOD模组下载

入驻泰拉战网 新手指引 - 升级 - 师徒

泰拉瑞亚合成表 泰拉卡牌 - 泰拉江湖 - 泰拉刺客

联系泰拉开发组👈进入 积分市场 - 房产交易 - 水晶获取

查看: 2358|回复: 0

Discuz 字符串过滤函数daddslashes

[复制链接]

506

主题

18

回帖

5

广播

论坛版主

积分
260
泰拉
22
水晶
1
铜钥匙
0
银钥匙
0
金钥匙
0

【江湖新秀】【宝剑回鞘】【泰拉达人】【奥运选手】

发表于 2020-6-6 12:32:22 | 显示全部楼层 |阅读模式
  1. function daddslashes($string, $force = 0, $strip = FALSE) {
  2.     //字符串或数组  是否强制  是否去除
  3.     //如果魔术引用未开启 或 $force不为0
  4.     if(!MAGIC_QUOTES_GPC || $force) {
  5.         if(is_array($string)) { //如果其为一个数组则循环执行此函数
  6.             foreach($string as $key => $val) {
  7.                 $string[$key] = daddslashes($val, $force);
  8.             }
  9.         } else {
  10.         //如果魔术引用开启或$force为0
  11.         //下面是一个三元操作符,如果$strip为true则执行stripslashes去掉反斜线字符,再执行addslashes
  12.         //$strip为true的,也就是先去掉反斜线字符再进行转义的为$_GET,$_POST,$_COOKIE和$_REQUEST $_REQUEST数组包含了前三个数组的值
  13.         //这里为什么要将$string先去掉反斜线再进行转义呢,因为有的时候$string有可能有两个反斜线,stripslashes是将多余的反斜线过滤掉
  14.             $string = addslashes($strip ? stripslashes($string) : $string);
  15.         }
  16.     }
  17.     return $string;
  18. }
复制代码

从上面的函数我们可以看出,只要是$_GET,$_POST,$_COOKIE和$_REQUEST这四个超全局变量,都会进行特殊过滤,因为$_REQUEST函数包含了前面的三个函数,所以才要过滤这四个函数,当是这四个超全局变量的时候,不管是否开启了魔术引用,都将进行下面的先去掉反斜线再进行转义。
这样可以有效的防止太多的反斜线。

非常实用的字符串过滤函数!!!


获得 花仙子卡 一张

卡片说明:君山 遇到 [斯文的小言] 被赠与 1 铜钥匙.

卡片效果:获得 1 铜钥匙

您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

QQ|友链申请|Archiver|手机版|小黑屋|游芯沙盒 ( 陕ICP备11006283号-1 )

GMT+8, 2024-11-23 22:46 , Processed in 0.103334 second(s), 35 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表