php $_REQUEST 数据错误

来源:互联网 发布:淘宝网的特点 编辑:程序博客网 时间:2024/05/16 12:34

陈永鹏的微博

陈永鹏的csdn博客地址:http://blog.csdn.net/chenyoper

陈永鹏的博客园地址:http://www.cnblogs.com/Yoperchen/


记录个奇怪的问题

在thinkphp3.2 通过REQUEST获取某数据的时候,一直跟前端传输过来的不一致。

且有个现象:

1.在入口文件中第一行打印$_REQUEST的数据是正确的。

2.在项目Controller文件中打印$_REQUEST则部分是跟 1 不一致。

这个不一致的值跟cookie的键是一样的,且收到的是同键名的cookie的值。


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

G,P,C的先后顺序就是设置的array的覆盖顺序。但是即使这样,在入口文件和Controller文件一样打印(print_r($_REQUEST))也应是一致的。


查看了php.ini ,request_order="CGP"

也许是TP内部做了什么处理。

全局搜索了一下,框架中也没有去设置request_order的地方.


此问题留待探究.


但综上,直接采用POST 或GET 获取数据即可。





作者:陈永鹏

邮箱:chen.yong.peng@foxmail.com

转载请注明作者陈永鹏CSDN博客地址:http://blog.csdn.net/chenyoper

零零糖