PHP(匿名函数)闭包引用外部变量

2018年7月8日18:01:24 XXM

Begin

最近写项目的时候,有时候要用到闭包,但是在闭包内直接引用外部变量会报错,以下就整理了一些闭包引用外部的方法

第一种

$global = 'hello';

$bbb = function()use($global){
    echo $global."\n";
};
$bbb();
//输出 'hello'

我们可以通过 use() 把变量传递进去.

第二种

$global = 'hello';
$fun = function(){
    global $global;
    $global =' world';
    echo $global."\n";
};
$fun();
// 输出 'world'

我们可以通过global关键字 声明变量,但是globa创建一个同名引用而已,并不会改变原本外部变量$global的作用域,也就是说在另外一个函数中调用该依旧需要声明或者使用闭包

End

日记本

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

赞赏支持
被以下专题收入,发现更多相似内容