如何将全球$ $ $ $ $返回给我的new2()
new1()
{
global $that;
global $this;//every global will return
global $here;
$here="true";
return $here;
}
new2($here)
{
//i dont have $here
}
class Main {
public function parametr(){
new1();
new2($here)
}
答案 0 :(得分:0)
首先,您无法使用new()
函数,因此我将其替换为new_()
。其次,如果要使用全局$here
而不是本地,则需要在函数的开头添加global $here
。所以代码看起来像:
$here = '';
function new_() {
global $here;
$here = "true";
return $here;
}
function new2() {
global $here;
echo $here;
}
new_();
new2();
更新:此外,您无法在Main类中传递$here
,因为您未声明它是全局$here
,因此它正在使用本地{{1}这是空的。与在$here
中使用参数$here
声明函数相同,如果您想要全局new2()
,则无法添加参数,因为它将在此处使用本地。