我在理解PHP中的包含和函数范围时遇到了一些麻烦,有些Google搜索没有提供成功的结果。但现在的问题是:功能范围在PHP中包括包括在内
这不起作用:
function include_a(){
// Just imagine some complicated code
if(isset($_SESSION['language'])){
include 'left_side2.php';
} else {
include 'left_side.php';
}
// More complicated code to determine which file to include
}
function b() {
include_a();
print_r($lang); // Will say that $lang is undefined
}
所以基本上,存在left_side.php
和left_side2.php
称为$lang
的数组。我想在b()
之内访问它,但上面的代码设置会说$lang
未定义。但是,当我复制并粘贴最初的include_a()
中的确切代码时,它将正常工作。但正如你所想象的,我不希望将代码复制并粘贴到我需要的每个函数中。
如何缓解这个范围问题,我做错了什么?
啊,谢谢。我不知道$ GLOBALS功能。尽管调用联想的$ GLOBALS有一个古怪的语法(即$ GLOBALS ['lang'] ['EMAIL']),但一切都很好。现在不需要include_a()函数。 再次感谢您。 – id2341677