php $request,慎用$_REQUEST以及如何定义$_REQUEST的处理优先级

好吧,我承认我严重的错了。

一直以为PHP的REQUEST处理优先级为PGSC。

[shell]

[root@yang ~]# php -i |grep variables_order

variables_order => GPCS => GPCS

[/shell]

$_REQUEST包括所有$_GET、$_POST和$_COOKIE几个数组中的数据元素。但是你需要注意的是,如果这几个数组中的元素的关键字是一样的,PHP将按照php.ini配置文件的变量赋值顺序依次对$_REQUEST数组中该关键字指定的元素进行重写。在php.ini中,G代表$_GET,P代表$_POST,C代表$_COOKIE,E代表$_ENV,S代表$_SERVER。按照配置文件的顺序,后面出现的数据会覆盖前面写入的数据。默认的数据写入顺序是EGPCS,因此,在关键字相同的情况下,POST包含的数据会覆盖GET中的数据。

php.in设置段:

; This directive describes the order in which PHP registers GET, POST, Cookie,

; Environment and Built-in variables (G, P, C, E & S respectively, often

; referred to as EGPCS or GPC). Registration is done from left to right, newer

; values override older values.

variables_order = "EGPCS"

因此,$_REQUEST会降低变量赋值的效率以及产生同关键字覆盖问题。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值