PHP 超级全局变量


PHP 超级全局变量

PHP 超级全局变量是 PHP 语言中预先定义的一组变量。这些变量均为全局变量,在脚本中的任何一个作用域都可以被访问。而不需要使用任何特殊的声明方式。

超级全局变量列表

PHP 中有以下 9 个超级全局变量:

  • $GLOBALS :引用全局作用域中可用的全部变量。
  • $_SERVER :保存关于报头、路径、以及脚本位置等信息的数组。
  • $_REQUEST :保存 GET、POST 和 COOKIE 请求的参数。
  • $_POST :保存通过 POST 方法提交的参数。
  • $_GET :保存通过 GET 方法提交的参数。
  • $_FILES :保存上传文件的相关信息。
  • $_ENV :保存环境变量的相关信息。
  • $_COOKIE :保存通过浏览器 cookies 传递的参数。
  • $_SESSION :保存会话信息的数组。

使用示例

下面是一些使用 PHP 超级全局变量的例子:

$GLOBALS

$x = 5;
$y = 10;

function addition() {
  $GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y'];
}

addition();
echo $z; // 输出 15

$_POST

HTML 表单:

<html>
<body>

<form action="welcome.php" method="post">
  Name: <input type="text" name="name"><br>
  <input type="submit" value="Submit">
</form>

</body>
</html> 

PHP 脚本:

<?php
$name = $_POST["name"];
echo "Welcome $name";
?>

$_SESSION

<?php
session_start();

$_SESSION["username"] = "John Doe";
$_SESSION["email"] = "john@example.com";

echo "Session variables are set.";
?>

总结

超级全局变量可以在 PHP 脚本的任何地方访问,无需特殊声明。使用超级全局变量可以方便地在 PHP 程序中传递信息。同时,需要注意安全性问题,不要在不安全的情况下直接访问超级全局变量中的数据。建议将所有传递的数据进行验证和过滤,以提高程序的安全性。