PHP 超全局变量$GLOBALS
包含一个引用指向每个当前脚本的全局范围内有效的变量。该数组的键标为全局变量的 名称。从 PHP 3 开始存在 $GLOBALS 数组。 $_SERVER
变量由 Web 服务器设定或者直接与当前脚本的执行环境相关联。类似于旧数组 $HTTP_SERVER_VARS 数组(依然有效,但反对使用)。 $_GET
经由 HTTP GET 方法提交至脚本的变量。类似于旧数组 $HTTP_GET_VARS 数组(依然有效,但反对使用)。 $_POST
经由 HTTP POST 方法提交至脚本的变量。类似于旧数组 $HTTP_POST_VARS 数组(依然有效,但反对使用)。 $_COOKIE
经由 HTTP Cookies 方法提交至脚本的变量。类似于旧数组 $HTTP_COOKIE_VARS 数组(依然有效,但反对使用)。 $_FILES
经由 HTTP POST 文件上传而提交至脚本的变量。类似于旧数组 $HTTP_POST_FILES 数组(依然有效,但反对使用)。详细信息请参阅 POST 方法上传。 $_ENV
执行环境提交至脚本的变量。类似于旧数组 $HTTP_ENV_VARS 数组(依然有效,但反对使用)。 $_REQUEST
经由 GET,POST 和 COOKIE 机制提交至脚本的变量,因此该数组并不值得信任。所有包含在该数组中的变量的存在与否以及变量的顺序均按照 php.ini 中的 variables_order 配置指示来定义。该数组没有直接模拟 PHP 4.1.0 的早期版本。参见 import_request_variables()。 
注意 
自 PHP 4.3.0 起,$_FILES 中的文件信息不再存在于 $_REQUEST 中。 
 注: 当运行于命令行模式时,这个数组将不会包含 argv 和 argc 入口;它们已经存在于数组 $_SERVER 中。 $_SESSION
当前注册给脚本会话的变量。类似于旧数组 $HTTP_SESSION_VARS 数组(依然有效,但反对使用)。详细信息,请参照 Session 处理函数章节。 这些东西还是看手册吧。
我想你还是具体问题具体分析的好。

解决方案 »

  1.   

    多谢kingerq(多菜鸟)兄的辛劳和坦诚,小弟发“请资深人士开讲座”系列帖子的本意是想和大家一起探讨一些PHP中常见的问题和难点,这其中小弟也了解一些理论和实作技巧,但对于深层次的东西,我还想学习得更多,我想这也是大家共同的心愿。
    PHP手册是个好东西,但是相比起来实作的经验更重要,上CSDN的朋友未必水平都一样,熟悉和精通的方向也不一样,开一系列集思广益的帖子,高手们多上一些实作的程序和个人的心得、体会、技巧,我认为这对大家都是有帮助的。
      

  2.   

    为了程序要更好的兼容性与可移植性,尽量多使用超级变量,但以下两个要谨慎,
    1. $_SERVER: 我们常常讨论的很多变量都是Apache的环境变量,在其他Server上不一定能用,因此如果有其他解决方案,最好不能以来于某一webserver环境变量编程
    2. GLOBALS: 呵呵,全局变量,很危险的一个东西,用的好,可以使程序非常简洁,明了,但是这个如果被滥用了,其后果可能就是代码的可维护性为0
      

  3.   

    没有什么可多说的
    $_get和$_post主要用来从浏览器向服务器传递数据,推荐尽可能使用$_POST$_SERVER主要是用来获取服务器信息的$_SESSION和$COOKIE主要用来保存浏览器的信息 ,session是建立在cookie的基础上,安全性比cookie好,使用上也简单的多,但是功能没有cookie强。短时间保存的客户信息可以用session,如购物车;长时间的就要用cookie了,如用户偏好$GLOBALS这种东西能不用就尽可能不要用
      

  4.   

    天啊,你问的还真多,FT,搞不好把偶榨干了哦。POST GET是HTTP工作的两种方式,对于所有的基于WEB服务器的应用都共有而SESSION是每种CGI实现为了记录与客户端会话状态的而提供的特殊类,PHP的session是保存在文件中的,JSP ASP都是由Web服务器(容器?)来保存的。另外还有一类Application保存所有客户端公用的数据的类,PHP好像没有这个吧?在ASP中,由于Application是公用的,所以提供了锁定和解锁机制来处理对Application的并发访问。