1、非匿名函数在定义时就创建函数工具和浸染域工具,往后及时未调用,也占空间
2、匿名函数只有在调用时,才会创建函数工具和浸染域工具。调用完后立即开释,节省内存。
php中匿名函数的利用
1、作为回调函数利用
<?php
echo preg_replace_callback('~-([a-z])~', function ($match) {
return strtoupper($match[1]);
}, 'hello-world');
2、作为变量赋值
<?php
$greet = function($name)
{
printf(\公众Hello %s\r\n\"大众, $name);
};
3、 从父浸染域继续变量
<?php
$message = 'hello';
// 没有 \"大众use\"大众
$example = function () {
var_dump($message);
};
echo $example();
// 继续 $message
$example = function () use ($message) {
var_dump($message);
};
echo $example();