PHP 超级全局变量相关总结

1. PHP 超级全局变量的概述

PHP 超级全局变量是一类在整个脚本的全部作用域中都可用的变量。它们不需要使用 global 关键字来访问,而是可以直接在函数、方法、类或文件的任何地方使用。在 PHP 中,有几个内置的超级全局变量,包括:

$GLOBALS

$_SERVER

$_GET

$_POST

$_REQUEST

$_SESSION

$_COOKIE

$_FILES

$_ENV

1.1 $GLOBALS

$GLOBALS 是一个包含了全局变量的全局组合数组。它可以在函数内部访问全局变量,而不需要使用 global 关键字。例如:

$x = 5;

function test() {

$y = 10;

echo $GLOBALS['x'] + $y;

}

test(); // 输出 15

1.2 $_SERVER

$_SERVER 是一个包含了诸如头信息、路径信息、脚本位置等的数组。它提供了很多有用的信息,可以用于创建动态的 web 页面。例如,可以使用 $_SERVER['PHP_SELF'] 来获取正在执行的脚本的文件名:

$filename = $_SERVER['PHP_SELF'];

echo $filename; // 输出当前脚本的文件名

1.3 $_GET

$_GET 是用于收集通过 URL 传递的表单数据的变量。它将 GET 请求中的参数存储为关联数组,并且可以很方便地在脚本中访问这些参数。例如,以下代码获取 URL 中的 id 参数的值:

$id = $_GET['id'];

echo $id; // 输出 URL 中的 id 参数值

1.4 $_POST

$_POST 是用于收集通过 HTTP POST 方法传递的表单数据的变量。它将 POST 请求中的参数存储为关联数组,并且可以很方便地在脚本中访问这些参数。例如,以下代码获取提交的表单中的 usernamepassword 字段的值:

$username = $_POST['username'];

$password = $_POST['password'];

1.5 $_REQUEST

$_REQUEST 包含了 $_GET$_POST$_COOKIE 的内容,可用于收集表单数据。

1.6 $_SESSION

$_SESSION 可用于在脚本间存储用户信息,允许在不同页面之间共享数据。需要注意的是,在使用 $_SESSION 前,需要先调用 session_start() 函数启动会话。

1.7 $_COOKIE

$_COOKIE 存储了通过 HTTP cookies 传递的变量。

1.8 $_FILES

后端开发标签