php的闭包问题, 主要是通过
use
关键字,但是 为了可以修改 外面的变量,这个时候需要 用到&
传入变量。
$msg = 'Hello world';
$func = function () {
var_dump($msg);
};
echo $func(); // 打印NULL
$func = function () use ($msg) {
var_dump($msg);
$msg = "hello Lee";
};
echo "<br/>";
echo $func();
echo "<br/>";
echo "msg = $msg"; //这里没用被修改
$func = function ()use (& $msg) {
var_dump($msg);
$msg = "hello Lee";
};
echo "<br/>";
echo $func();
echo "<br/>";
echo "&msg = $msg"; //这里被修改了
image.png打印结果
网友评论