gus*_*gus 0 php global-variables
在PHP中,如何在类中的函数中使用外部$ var?例如,假设$ some_external_var设置为true,你有类似的东西
class myclass {
bla ....
bla ....
function myfunction() {
if (isset($some_external_var)) do something ...
}
}
$some_external_var =true;
$obj = new myclass();
$obj->myfunction();
谢谢
您需要global在函数中使用关键字,以使外部变量对该函数可见.
例如 :
$my_var_2 = 'glop';
function test_2()
{
global $my_var_2;
var_dump($my_var_2); // string 'glop' (length=4)
}
test_2();
Run Code Online (Sandbox Code Playgroud)
您也可以使用$GLOBALS数组,即使在函数内部也是如此.
但是使用全局变量通常不被认为是一种好习惯:你的类不应该依赖某些可能存在或可能不存在的外部东西!
更好的方法是将您需要的变量作为参数传递给方法本身,或者传递给类的构造函数......