匿名函数(Anonymous functions),也叫闭包函数(closures),允许临时创建一个没有指定名称的函数。
匿名函数的好处
1、非匿名函数在定义时就创建函数对象和作用域对象,以后及时未调用,也占空间
2、匿名函数只有在调用时,才会创建函数对象和作用域对象。调用完后立即释放,节省内存。
php中匿名函数的使用
1、作为回调函数使用
<?php echo preg_replace_callback('~-([a-z])~', function ($match) { return strtoupper($match[1]); }, 'hello-world'); // 输出 helloWorld
2、作为变量赋值
<?php $greet = function($name) { printf("Hello %s\r\n", $name); }; $greet('World'); $greet('PHP');
输出:
3、 从父作用域继承变量
<?php $message = 'hello'; // 没有 "use" $example = function () { var_dump($message); }; echo $example(); // 继承 $message $example = function () use ($message) { var_dump($message); }; echo $example();
输出:
Atas ialah kandungan terperinci PHP匿名函数可以干什么用. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!