- PHP 菜鸟教程
- PHP - 教程
- PHP - 简介
- PHP - 安装
- PHP - 历史
- PHP - 功能
- PHP - 语法
- PHP - Hello World
- PHP - 注释
- PHP - 变量
- PHP - echo 语句和 print 语句
- PHP - var_dump() 函数
- PHP - $ 和 $$ 变量
- PHP - 常量
- PHP - 魔术常量
- PHP – 数据类型
- PHP - 类型转换
- PHP - 类型戏法
- PHP - 字符串
- PHP - 布尔值
- PHP - 整数
- PHP - 文件和I/O
- PHP – 数学函数
- PHP - Heredoc & Nowdoc
- PHP - 复合类型
- PHP - 文件包含
- PHP - 日期和时间
- PHP - 标量类型声明
- PHP - 返回类型声明
- PHP 运算符
- PHP - 运算符类型
- PHP - 算术运算符示例
- PHP - 比较运算符示例
- PHP - 逻辑运算符示例
- PHP - 赋值运算符示例
- PHP – 字符串运算符
- PHP – 数组运算符
- PHP – 条件运算符示例
- PHP - Spread 运算符
- PHP - Null 合并运算符
- PHP - Spaceship 运算符
- PHP 控制语句
- PHP – 决策
- PHP - If…Else 语句
- PHP - Switch 语句
- PHP – 循环类型
- PHP - For 循环
- PHP - Foreach 循环
- PHP - While 循环
- PHP - do...While 循环
- PHP - Break 语句
- PHP - Continue 语句
- PHP 数组
- PHP - 数组
- PHP - 索引数组
- PHP - 关联数组
- PHP - 多维数组
- PHP - 数组函数
- PHP - 常量数组
- PHP 函数
- PHP - 函数
- PHP - 函数参数
- PHP - 按值调用
- PHP - 按引用调用
- PHP - 默认参数
- PHP - 命名参数
- PHP - 变量参数
- PHP - 返回值
- PHP - 传递函数
- PHP - 递归函数
- PHP - 类型提示
- PHP - 变量范围
- PHP - 严格类型
- PHP - 匿名函数
- PHP - 箭头( Arrow )函数
- PHP - 变量处理函数
- PHP - 局部变量
- PHP - 全局变量
- PHP 超全局变量
- PHP - 超全局变量
- PHP - $GLOBALS 变量
- PHP - $_SERVER 变量
- PHP - $_REQUEST 变量
- PHP - $_POST 变量
- PHP - $_GET 变量
- PHP - $_FILES 变量
- PHP - $_ENV 变量
- PHP - $_COOKIE 变量
- PHP - $_SESSION 变量
- PHP 文件处理
- PHP - 文件处理
PHP - $GLOBALS 变量
$GLOBALS 是 PHP 的“超全局”或“自动全局”变量之一。它在整个脚本的所有范围内都可用。无需执行 “global $variable;”即可在函数或方法中访问它。
$GLOBALS 是对所有全局定义变量引用的关联数组。变量的名称形成键,其内容是关联数组的值。
例
此示例显示 $GLOBALS 包含全局变量名称和内容的数组 -
<?php
$var1="Hello";
$var2=100;
$var3=array(1,2,3);
echo $GLOBALS["var1"] . "\n";
echo $GLOBALS["var2"] . "\n";
echo implode($GLOBALS["var3"]) . "\n";
?>
它将产生以下输出 -
Hello
100
123
100
123
例
在以下示例中,$var 1 在全局命名空间中定义,并在函数内部定义局部变量。全局变量是从 $GLOBALS 数组中提取的。
<?php
function myfunction() {
$var1="Hello PHP";
echo "var1 in global namespace: " . $GLOBALS['var1']. "\n";
echo "var1 as local variable: ". $var1;
}
$var1="Hello World";
myfunction();
?>
它将产生以下输出 -
var1 in global namespace: Hello World
var1 as local variable: Hello PHP
var1 as local variable: Hello PHP
例
在 PHP 版本 8.1.0 之前,全局变量可以通过 $GLOBALS 数组的副本来修改。
<?php
$a = 1;
$globals = $GLOBALS;
$globals['a'] = 2;
var_dump($a);
?>
它将产生以下输出 -
int(1)
这里,$globals 是 $GLOBALS 超全局变量的副本。更改副本中的元素(其键为 “a” 到 2)实际上会更改 $a 的值。
它将产生以下输出 -
int(2)
例
从 PHP 8.1.0 开始,$GLOBALS 是全局符号表的只读副本。也就是说,不能通过其复制和修改全局变量。与上述相同的操作不会将 $a 更改为 2。
<?php
$a = 1;
$globals = $GLOBALS;
$globals['a'] = 2;
var_dump($a);
?>
它将产生以下输出 -
int(1)