function a()
{
$demi = '局部变量';
b($demi);
}
function b($args)
{
echo $args;
}
a();
PHP中的所有函数和类都具有全局作用域,可以定义在一个函数之内而在之外调用,反之亦然。
为什么函数b能够通过传参方式获取函数a的局部变量?
function tesxt()
{
$var = 10;
$echonumber = function($num) {
echo $num;
};
$echonumber($var);
}
tesxt();
同样,匿名函数为什么也是通过传参方式来获取外部函数的变量?
高洛峰2017-05-18 10:47:34
其实是这样的。当你调用函数的时候,你传的参数其实是一个副本,值复制,相当于另外一个变量,没有任何关系。
同理匿名函数也是一样的。但是你如果想要在匿名函数中使用外部变量,是无法访问的。