$func
=
function
(
$str
) {
echo
$str
;
};
$func
( 'some string' );
}
printStr();
//例二
//在函数中把匿名函数返回,并且调用它
function
getPrintStrFunc() {
$func
=
function
(
$str
) {
echo
$str
;
};
return
$func
;
}
$printStrFunc
= getPrintStrFunc();
$printStrFunc
( 'some string' );
//例三
//把匿名函数当做参数传递,并且调用它
function
callFunc(
$func
) {
$func
( 'some string' );
}
$printStrFunc
=
function
(
$str
) {
echo
$str
;
};
callFunc(
$printStrFunc
);
//也可以直接将匿名函数进行传递。如果你了解 js,这种写法可能会很熟悉
callFunc(
function
(
$str
) {
echo
$str
;
} );
连接闭包和外界变量的关键字:USE
闭包可以保存所在代码块上下文的一些变量和值。PHP 在默认情况下,匿名函数不能调用
所在代码块的上下文变量,而需要通过使用
use
关键字。
换一个例子看看:
代码如下:
function
getMoney() {
$rmb
= 1;
$dollar
= 6;
$func
=
function
()
use
(
$rmb
) {