php匿名函数
匿名函数。也叫闭包函数,允许临时创建一个没有指定名称的函数。最经常用作回调函数参数的值。当然,也有其他应用的情况。
匿名函数目前是通过Closure类来实现的。
匿名函数示例:
1 |
|
闭包函数也可以作为变量的值来使用。php会自动把此种表达式转换成内置类Closure的对象实例。把一个Closure对象赋值给一个变量的方式与普通变量赋值的语法是一样的,最后也要加上分号:
匿名函数变量赋值示例:
1 |
|
闭包可以从父作用域中继承变量。任何此类变量都应该用use语言结构传递进去。php7.1起,不能传入此类变量;superglobals、$this或者和参数重名。
从父作用域继承变量:
1 |
|
以上例子的输出类似于:
Notice: Undefined variable: message in /example.php on line 6
NULL
string(5) "hello"
string(5) "hello"
string(5) "hello"
string(5) "world"
string(11) "hello world"