![](/img/trans.png)
[英]PHP - Get variable of another function in a php controller
[英]Get a variable in a function within another function PHP
帮助我在另一个函数中的一个函数中获取变量
$variable ="alfa";
function foo(){
$variable ="beta";
$my_function = function(){
global $variable;
return $variable;
};
return $my_function();
}
我想要函数foo(); 打印“ beta”而不是“ alpha”,我的代码有什么问题?
print foo(); // this print "alpha" and should print "beta"
使用use
代替global
。
$variable ="alfa";
function foo(){
$variable ="beta";
$my_function = function() use ($variable){
return $variable;
};
return $my_function();
}
您可以在文档示例3中阅读更多相关信息
您应该声明global $variable;
在分配$variable ="beta";
。
如果不是,则您是在函数作用域而不是全局作用域中工作。
尝试清除“变量范围”的概念
在函数foo()
,您声明变量$ variable,然后在匿名函数中访问在foo()
声明的$ variable,因此,如果要在匿名函数中使用全局$ variable,在声明函数foo()
之后,应该立即使global $variable
$variable ="alfa";
function foo(){
global $variable;
$variable ="beta";
$my_function = function(){
global $variable;
return $variable;
};
return $my_function();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.