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 相关文章推荐
php批量删除数据
Jan 18 PHP
PHPMYADMIN 简明安装教程 推荐
Mar 07 PHP
在wamp集成环境下升级php版本(实现方法)
Jul 01 PHP
PHP解码unicode编码的中文字符代码分享
Aug 13 PHP
PHP扩展开发入门教程
Feb 26 PHP
Linux安装配置php环境的方法
Jan 14 PHP
PHP处理二进制数据的实现方法
Jun 13 PHP
jquery+thinkphp实现跨域抓取数据的方法
Oct 15 PHP
php使用 readfile() 函数设置文件大小大小的方法
Aug 11 PHP
THINKPHP3.2使用soap连接webservice的解决方法
Dec 13 PHP
PHP7 mongoDB扩展使用的方法分享
May 02 PHP
PHP创建XML的方法示例【基于DOMDocument类及SimpleXMLElement类】
Sep 10 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新手上路(二)
2006/10/09 PHP
PHP实现限制IP访问及提交次数的方法详解
2017/07/17 PHP
php使用fputcsv实现大数据的导出操作详解
2020/02/27 PHP
JQuery跨Iframe选择实现代码
2010/08/19 Javascript
利用js的Node遍历找到repeater的一个字段实例介绍
2013/04/25 Javascript
JS获取随机数函数可自定义最小值最大值
2014/05/08 Javascript
js获取日期:昨天今天和明天、后天
2014/06/11 Javascript
javascript实现避免页面按钮重复提交
2015/01/08 Javascript
js+html5绘制图片到canvas的方法
2015/06/05 Javascript
常用的Javascript数据验证插件
2015/08/04 Javascript
jquery实现的动态回到顶部特效代码
2015/10/28 Javascript
JavaScript开发者必备的10个Sublime Text插件
2016/02/27 Javascript
jQuery简单实现仿京东分类导航层效果
2016/06/07 Javascript
JS判断iframe是否加载完成的方法
2016/08/03 Javascript
webpack-dev-server远程访问配置方法
2018/02/22 Javascript
vue中vee validate表单校验的几种基本使用
2018/06/25 Javascript
jQuery动态操作表单示例【基于table表格】
2018/12/06 jQuery
基于JS实现简单滑块拼图游戏
2019/10/12 Javascript
Python的SQLAlchemy框架使用入门
2015/04/29 Python
Python正则表达式使用范例分享
2016/12/04 Python
TensorFlow 实战之实现卷积神经网络的实例讲解
2018/02/26 Python
对python numpy.array插入一行或一列的方法详解
2019/01/29 Python
解决webdriver.Chrome()报错:Message:'chromedriver' executable needs to be in Path
2019/06/12 Python
Python的条件锁与事件共享详解
2019/09/12 Python
python3常用的数据清洗方法(小结)
2019/10/31 Python
Django接收照片储存文件的实例代码
2020/03/07 Python
python读取mysql数据绘制条形图
2020/03/25 Python
Python Request类源码实现方法及原理解析
2020/08/17 Python
Python爬虫实现自动登录、签到功能的代码
2020/08/20 Python
俄罗斯运动鞋商店:Sneakerhead
2018/05/10 全球购物
The Hut英国:英国领先的豪华在线百货商店
2019/07/26 全球购物
罗马尼亚在线杂货店:Pilulka.ro
2019/09/28 全球购物
档案保密承诺书
2014/06/03 职场文书
2014年行政执法工作总结
2014/12/11 职场文书
如何理解python接口自动化之logging日志模块
2021/06/15 Python
MyBatis自定义SQL拦截器示例详解
2021/10/24 Java/Android