有没有办法在PHP中实现以下目标,还是根本不允许这样做?(请参见下面的注释行)
function outside() {
$variable = 'some value';
inside();
}
function inside() {
// is it possible to access $variable here without passing it as an argument?
}
Run Code Online (Sandbox Code Playgroud)
这是不可能的。如果$variable是全局变量,您可以通过关键字访问它global。但这是在一个函数中。所以你无法访问它。
不过,可以通过$GLOBALS数组设置全局变量来实现。但同样,你正在利用全球背景。
function outside() {
$GLOBALS['variable'] = 'some value';
inside();
}
function inside() {
global $variable;
echo $variable;
}
Run Code Online (Sandbox Code Playgroud)