php实现简单闭包

闭包可用在什么地方?

  1. 减少foreach的循环的代码
  2. 减少函数的参数
  3. 解除递归函数
  4. 减少重复代码
$message = 'hello';
$example = function() use ($message){
    var_dump($message);
};
echo $example();
//重置为hello
$message = 'hello';
//此处传引用
$example = function() use(&$message){
    var_dump($message);
};
echo $example();
//输出hello
$message = 'world';
echo $example();
//此处输出world
//闭包函数也用于正常的传值
$message = 'hello';
$example = function ($data) use ($message){
    return "{$data},{$message}";
};
echo $example('world');
//此处输出world,hello
添加新评论