我有2个php文件。我无法从A的静态方法得到B的全局变量:
a.php只会
class c_A
{ public static function f_A()
{ include_once( "B.php" ) ;
print f_B() ;
}
}
c_A::f_A( ); // only prints "B : "
B.php
$gvs = "global variable from B" ;
function f_B()
{ return "B : " . $GLOBALS[ "gvs" ] ;
}
答案 0 :(得分:1)
$GLOBALS[ "gvs" ]
为空,因为您在函数内部调用了B.php
。因此$gvs
变量不会声明为全局变量。如果您在B.php
课外加A.php
,您将获得结果:
<强> a.php只会强>
include_once( "B.php" ) ;
class c_A
{ public static function f_A()
{
print f_B() ;
}
}
c_A::f_A( ); // will prints "B : global variable from B"