当前位置: 首页 > 图文教程 > 网络编程 > PHP > 使用PHP4.2.0及以后版本的注意事项

PHP
MYSQL版本大于4.1问题 - PHPchina
怎么让用户点击一个连接后,把一个图片另存了 - PHPchina
武汉10月15日Phper聚会召集!!! - PHPchina
php如果不等待exec执行的程序创建的子进程? - PHPchina
哪位知道DISCUZ处理防SQL注入的代码是哪部分 - PHPchina
求教!我实在不知道哪里问题,在线等ing - PHPchina
怎样结束用户某一进程 - PHPchina
比对用户名密码能不能这样写? - PHPchina
求助:如何在PHP+mysql中实现数据备份? - PHPchina
大家看看这个配置对吗 - PHPchina
如何禁止require当前文件 - PHPchina
无法将回调函数放在类中? - PHPchina
村里 PHP代码高亮是怎么实现的? - PHPchina
apache安装后.服务里没有apache2这个服务! - PHPchina
请教一个小问题 - PHPchina
config.php里面是不是应该把多数参数设置为常量而不是变量? - PHPchina
请教高手一个问题 - PHPchina
如何让百度收录我的网站 ?? - PHPchina
谁能给个注入的简单语句? - PHPchina
求PHP站内搜索思路 - PHPchina

使用PHP4.2.0及以后版本的注意事项


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 107 ::
收藏到网摘: n/a

从PHP 4.2.0版本开始中, PHP 指令 register_globals 的默认值为 off(在php.ini配置文件里). 这是 PHP 的一个主要变化。register_globals是干什么用的呢?它是PHP用来控制是否将EGPCS (Environment, GET, POST, Cookie, Server)变量是否注册为全局变量的。

例如,对于 http://www.xx.php?var=2 这里的var,在为 on 时,你只需用 var 即可,但在 off 时,就必须用 _GET["var"] 来接收了~ 这里的 _GET 就是一个PHP超全局变量数组。和它性质一样的还有:

GLOBALS

包含一个引用指向每个当前脚本的全局范围内有效的变量。该数组的键标为全局变量的 名称。从 PHP 3 开始存在 GLOBALS 数组。

_SERVER

变量由 Web 服务器设定或者直接与当前脚本的执行环境相关联。等同于旧数组 HTTP_SERVER_VARS 数组,但和 _SERVER 不是一个变量,因为PHP处理它们的方式不同,下同。虽然HTTP_SERVER_VARST和下面的HTTP_*_VARS仍然可以使用,但绝不推荐您再使用HTTP_*_VARS.

_GET

经由 HTTP GET 方法提交至脚本的变量。例如由 URL、表单的GET方式 产生的变量。
使用方式:_GET["xx"]; //即xx; 下同

_POST

经由 HTTP POST 方法提交至脚本的变量。例如由 表单的POST方式 产生的变量。
使用方式:_POST["xx"];

_COOKIE

经由 HTTP Cookies 方法提交至脚本的变量。 例如读取COOKIE值的时候。

_FILES

经由 HTTP POST 文件上传而提交至脚本的变量。我的另一篇文章 对文件上传处理过程的进一步说明 已经较详细地介绍它的用法,这里不再说明。

_ENV

执行环境提交至脚本的变量。

_REQUEST

经由任何用户输入机制提交至脚本的变量,包括 GET,POST,COOKIE等方式,因此该数组并不值得信任。

_SESSION

存放SESSION变量的数组。

你不必用session_regisger来注册某个变量,用 _SESSION["xx"] 即包含有上述过程。