PHP中超级全局变量$GLOBALS的介绍及使用

php 2023-05-31 228次浏览

前言

最近进行项目优化改造,针对项目内参数传递想统一规整一下,目前传参满天飞的局面极其不合理,一方面参数传递中间被修改后容易引起歧义,另一方面本身多层传递对业务逻辑实现上也很不友好,期间调研了全局变量作为参考,虽然最终没有采取$GLOBALS,还是记录一下

1.针对global 关键字在函数内部访问全局变量。您可以在函数内部使用 global 关键字来引用全局变量,然后在函数内使用它。请注意,在函数内部更改全局变量的值将影响整个脚本中该变量的值。以下是一个示例:

<?php

// 定义全局变量
$myGlobalVar = "Hello, world!";

function myFunction() {
    global $myGlobalVar; // 使用 global 关键字声明全局变量

    echo $myGlobalVar;
}

myFunction(); // 输出:Hello, world!

2.另一种方法是使用 $GLOBALS 数组访问全局变量,$GLOBALS 一个包含了全部变量的全局组合数组。变量的名字就是数组的键。(即所有出现过的全局变量,都可通过$GLOBALS获取到)
如下所示:

<?php

// 定义全局变量
$GLOBALS['myGlobalVar'] = "Hello, world!";

function myFunction() {
    echo $GLOBALS['myGlobalVar'];

    //$GLOBALS['myGlobalVar']是外部的全局变量$myGlobalVar本身,也可以使用这种方式。
    echo $myGlobalVar;
}

myFunction(); // 输出:Hello, world!

这种方法可以直接使用 $GLOBALS 数组在函数内部访问全局变量,不需要使用 global 关键字。但是,与使用 global 关键字访问全局变量相比,这种方法可能会导致代码可读性较差。

PHP中超级全局变量$GLOBALS的介绍及使用

喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址