首页 新闻 会员 周边

php$GLOBALS问题

0
悬赏园豆:5 [已解决问题] 解决于 2012-06-09 21:55

  我们在写php是定义全局变量实际上这些变量都还是定义在$GLOBALS数组中的,里面包含$_GET,$_POST,但是为什么能在函数内部直接访问$_GET,$_POST,而自定义在$_GLOBALS中的变量要通过$_GLOBALS访问?????   

php
unbreakable的主页 unbreakable | 初学一级 | 园豆:111
提问于:2012-05-08 12:59
< >
分享
最佳答案
0

您好 PHP中预定义了8个大的超级全局变量,其中$_GET的功能是获取get方式过来的参数,如http://xxx.com/list.php?time=0&uid=1 那么可以使用$_GET['time']或$_GET['uid']来获取对应的值。$_POST是用来获取post方式过来的参数,而$_GLOBALS包含全局作用域内的所有变量,也就是说他是个大的数组,当你在$_GLOBALS中添加元素时是把元素add进了这个大数组中,那么你添加的元素的指针就指向了$_GLOBALS中的一个内存位置,如果你通过$_get or $_post来访问您添加的元素,实际上在物理位置这个键值并不存在,所以无法找到此键值对应的值。

收获园豆:5
Sandglass | 初学一级 |园豆:52 | 2012-05-27 11:42
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册