php magic_quotes_gpc 配置,PHP5,6,7版本中如何使用magic_quotes_gpc转义数据保证安全

在PHP5版本有这样一个函数,magic_quotes_gpc函数,作用是在php中的判断解析用户提示的数据,如包括有:post、get、cookie过来的数据增加转义字符“\”,以保证这些数据不会引起程序,特别是数据库语句因为特殊字符引起的污染而出现致命的错误。

可是在PHP6和PHP7中已经取消了这个函数,这时候我们需要自己定义一个函数来保证数据是否需要转义。

function quotes_gpc_pd($gpc_value,$gpc_pd){ //转义字符   注意:checkbox[]数组时不能用这个,要不implode出错

if (!get_magic_quotes_gpc()) {//判断一下是否支持magic_quotes_gpc,如果不支持就利用addslashes转义。

$gpc_value = addslashes($gpc_value);    // delete backslash(\)

}

if ($gpc_pd=='1') {

$gpc_value=htmlspecialchars($gpc_value,ENT_COMPAT,'ISO-8859-1');

}

return $gpc_value;

}

实际在POST接收数据时,可以这样写:

$password=quotes_gpc_pd($_POST['password'],1);

其中的参数1表示需要htmlspecialchars转换。如果标记为0表示不用转换,这主要是为了比如在文章发布的时候有用到像百度编辑器Ueditor这种可以自行转换为html实体的插件,就没有必要再执行一次了,否则数据就错乱了。

顶一下

(0)

100%订阅

回复

踩一下

(0)

100%

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值