本文实例讲述了PHP匿名函数和use子句用法。分享给大家供大家参考,具体如下:
下面方法输出的是hello world
$param1和$param2是闭包变量
1
2
3
4
5
6
7
8
9
10
11
12
|
function test() { $param2 = 'every' ; // 返回一个匿名函数 return function ( $param1 ) use ( $param2 ) { // use子句 让匿名函数使用其作用域的变量 $param2 .= 'one' ; print $param1 . ' ' . $param2 ; }; } $anonymous_func = test(); $anonymous_func ( 'hello' ); |
下面的方式 输出hello everyone
1
2
3
4
5
6
7
8
9
10
11
12
|
function test() { $param2 = 'everyone' ; $func = function ( $param1 ) use ( $param2 ) { // use子句 让匿名函数使用其父作用域的变量 print $param1 . ' ' . $param2 ; }; $param2 = 'everybody' ; return $func ; } $anonymous_func = test(); $anonymous_func ( 'hello' ); |
下面的方式 输出hello everybody
$param2中多了一个引用
1
2
3
4
5
6
7
8
9
10
11
12
|
function test() { $param2 = 'everyone' ; $func = function ( $param1 ) use (& $param2 ) { // use子句 让匿名函数使用其父作用域的变量 print $param1 . ' ' . $param2 ; }; $param2 = 'everybody' ; return $func ; } $anonymous_func = test(); $anonymous_func ( 'hello' ); |
希望本文所述对大家PHP程序设计有所帮助。