php中使用$_REQUEST需要注意的一个问题


Posted in PHP onMay 02, 2013

问题
说起$_REQUEST,大家都知道的是它是$_GET和$_POST的集合。但是如果你有心的话,查一下文档,会看到:

$_REQUEST

An associative array that by default contains the contents of $_GET, $_POST and $_COOKIE.

这里说$_REQUEST默认是$_GET, $_POST, $_COOKIE的集合,结果我使用我本地的php查看了一下发现只有$_GET, $_POST, 没有$_COOKIE!! 难道文档是错的?

 

答案
其实changelog中有给出解释:

php中使用$_REQUEST需要注意的一个问题

版本5.3以上,php.ini中有request_order属性来设置$_REQUEST。查了下php.ini, request_order设置成为了GP(Get and Post)。

 

request_order的官网描述:

request_order string

This directive describes the order in which PHP registers GET, POST and Cookie variables into the _REQUEST array. Registration is done from left to right, newer values override older values.

If this directive is not set, variables_order is used for $_REQUEST contents.

Note that the default distribution php.ini files does not contain the 'C' for cookies, due to security concerns.

 

原来是G,P,C分别代表Get,Post,Cookie,5.3以上的版本request_order默认是设置成GP的,并不包含C,即$_REQUEST默认只包含$_GET和$_POST !! (所以官网文档有一定的误导)。

 

也同时说一下G,P,C的先后顺序就是设置的array的覆盖顺序。

提醒下如果你是使用fpm-php实验的话,改了php.ini后你需要重启php-fpm

PHP 相关文章推荐
给apache2.2加上mod_encoding模块後 php5.2.0 处理url出现bug
Apr 12 PHP
支持数组的ADDSLASHES的php函数
Feb 16 PHP
AJAX的跨域访问-两种有效的解决方法介绍
Jun 22 PHP
PHP生成迅雷、快车、旋风等软件的下载链接代码实例
May 12 PHP
PHP使用ODBC连接数据库的方法
Jul 18 PHP
PHP Static延迟静态绑定用法分析
Mar 16 PHP
Zend Framework教程之Zend_Db_Table_Row用法实例分析
Mar 21 PHP
[原创]php集成安装包wampserver修改密码后phpmyadmin无法登陆的解决方法
Nov 23 PHP
php中的抽象方法和抽象类
Feb 14 PHP
Laravle eloquent 多对多模型关联实例详解
Nov 22 PHP
Thinkphp5框架实现图片、音频和视频文件的上传功能详解
Aug 27 PHP
laravel实现上传图片并在页面显示的例子
Oct 14 PHP
PHP执行批量mysql语句的解决方法
May 02 #PHP
PHP闭包(Closure)使用详解
May 02 #PHP
PHP5中Cookie与 Session使用详解
Apr 30 #PHP
PHP容易忘记的知识点分享
Apr 30 #PHP
基于curl数据采集之正则处理函数get_matches的使用
Apr 28 #PHP
基于curl数据采集之单页面并行采集函数get_htmls的使用
Apr 28 #PHP
基于curl数据采集之单页面采集函数get_html的使用
Apr 28 #PHP
You might like
php中利用explode函数分割字符串到数组
2014/02/08 PHP
Laravel 4 初级教程之Pages、表单验证
2014/10/30 PHP
php 如何设置一个严格控制过期时间的session
2017/05/05 PHP
Referer原理与图片防盗链实现方法详解
2019/07/03 PHP
php使用goto实现自动重启swoole、reactphp、workerman服务的代码
2020/04/13 PHP
Laravel框架源码解析之反射的使用详解
2020/05/14 PHP
jquery 最简单易用的表单验证插件
2010/02/27 Javascript
jquery 使用点滴函数代码
2011/05/20 Javascript
js 回车提交表单两种实现方法
2012/12/31 Javascript
js 窗口抖动示例
2013/09/04 Javascript
JavaScript实现网站访问次数统计代码
2015/08/12 Javascript
jQuery实现动态添加和删除一个div
2015/08/12 Javascript
Javascript设计模式理论与编程实战之简单工厂模式
2015/11/03 Javascript
详解js中Json的语法与格式
2016/11/22 Javascript
详解利用 Express 托管静态文件的方法
2017/09/18 Javascript
bootstrap可编辑下拉框jquery.editable-select
2017/10/12 jQuery
JS基于for语句编写的九九乘法表示例
2018/01/04 Javascript
React降级配置及Ant Design配置详解
2018/12/27 Javascript
js中script的上下放置区别,Dom的增删改创建操作实例分析
2019/12/16 Javascript
js实现贪吃蛇小游戏(加墙)
2020/07/31 Javascript
详解JavaScript 事件流
2020/09/02 Javascript
javascript canvas封装动态时钟
2020/09/30 Javascript
前端 javascript 实现文件下载的示例
2020/11/24 Javascript
用python + openpyxl处理excel2007文档思路以及心得
2014/07/14 Python
Python Web框架Flask中使用新浪SAE云存储实例
2015/02/08 Python
Python实现的微信红包提醒功能示例
2019/08/22 Python
OpenCV灰度化之后图片为绿色的解决
2020/12/01 Python
美国购买和销售礼品卡平台:Raise
2017/01/13 全球购物
英国健康和美容技术产品购物网站:CurrentBody
2019/07/17 全球购物
英国百年闻名的优质健康产品连锁店:Holland & Barrett
2019/12/19 全球购物
英国儿童设计师服装和玩具购物网站:Zac & Lulu
2020/10/19 全球购物
应届生.NET方向面试题
2015/05/23 面试题
大学生学习党课思想汇报
2014/01/03 职场文书
2015年科普工作总结
2015/07/23 职场文书
IDEA 链接Mysql数据库并执行查询操作的完整代码
2021/05/20 MySQL
SQL Server表分区降低运维和维护成本
2022/04/08 SQL Server