在PHP中,预定义变量是PHP语言为了简化开发过程而自动创建的变量。这些变量以美元符号`$`开头,但它们的名称是PHP预先定义好的,并且具有特殊的用途。以下是一些常用的PHP预定义变量小结:
1. **`$_SERVER`**:这是一个包含了诸如头信息(header)、路径(path)以及脚本位置(script locations)的数组。这个数组由web服务器创建。
2. **`$_GET`**:通过URL参数传递给当前脚本的变量的数组。
3. **`$_POST`**:通过HTTP POST方法传递给当前脚本的变量的数组。
4. **`$_REQUEST`**:默认包含了`$_GET`、`$_POST`和`$_COOKIE`的内容。这是一个超全局变量,用于收集通过GET、POST和COOKIE方法发送的数据。
5. **`$_SESSION`**:用于存储关于用户会话(session)的信息。会话变量可以是用户身份信息、用户设置等。
6. **`$_FILES`**:由文件上传相关的表单元素(``)创建的数组。这个数组包含了文件上传的信息,如文件名、类型、大小等。
7. **`$_COOKIE`**:通过HTTP Cookies传递给当前脚本的变量的数组。Cookies是存储在客户端的文本信息,可以用来识别用户。
8. **`$_ENV`**:包含了通过环境方式传递给当前脚本的变量的数组。这些变量通常来自于服务器的配置。
9. **`$GLOBALS`**:这是一个包含了所有全局变量的全局数组。这意味着你可以通过这个数组访问到任何全局变量,包括那些由用户定义的。
10. **`$_HTTP_RAW_POST_DATA`**(注意:在PHP 5.6.0以后被废弃,并在PHP 7.0.0中被移除):用于存储原始的POST数据。然而,由于安全性和兼容性原因,建议避免使用,并寻找其他方法来获取POST数据。
11. **`$php_errormsg`**(注意:这不是一个超全局变量,但常用于错误处理):这是一个变量,包含了前一个PHP错误的文本描述。注意,这个变量的行为可能会因PHP的配置和版本而异。
这些预定义变量在PHP开发中非常有用,因为它们提供了快速访问HTTP请求数据、会话信息、服务器配置等的能力。然而,在使用这些变量时,也要注意安全性和性能问题,特别是处理用户输入时。