如何使用 $GLOBALS

How to work with $GLOBALS

我有 2 个不同的 php 文件,我在其中一个文件中创建了一个全局数组

$GLOBALS['system'] = array(
    'mysqli' => array(
        'host'      => 'localhost',
        'username'  => 'root',
        'password'  => '',
        'database'  => 'database'
    )
);

我怎样才能在另一个文件中使用这个数组,例如

$GLOBALS['system']['mysql']['host'];
$GLOBALS['system'] = array();

这是不必要的。就这样

$system = array();

现在,您可以在任何地方使用 $system(在其他包含等中),但问题是函数看不到它 due to scope。这意味着每个函数都无法访问 $system,因为它不在全局范围内(这是一件好事,因为如果您需要在函数内部使用 $system 怎么办?)现在,您可以总是回到

function foo() {
     echo $GLOBALS['system'];
}

但这很笨拙,它依赖于 $system 在某处定义且不更改。所以让我们注入它

function foo($system) {
     echo $system;
}
foo($system);