PHP 闭包

首先看看闭包是什么样子的先

$a = function ($b,$c,$d){
    return $b;
};

echo $a(666);

以上就是一个闭包,我们可以理解为,给$a赋值一个方法,那么$a就成了那个方法,它是一个独立的存在,想要调用外面的数据就只能通过方法传递过去

并且闭包还有个特点就是他可以保留住执行数据,不会被传递过来的值覆盖,如下

 

$res = 1;
//use为连接外部变量的一个函数,如果想要保存里面的执行数据,不被外部变量覆盖的话加 & 即可
//以下结果为123,去掉&结果为111
$a = function() use ( &$res ) {
    echo $res;
    //把$rmb的值加1
    $res++;
};
$a();
$a();
$a();

 

 

array_map使用闭包遍历数据

<?php
header("Content-Type: text/html;charset=utf-8");

$nubmers = array_map(function($number){return $number++;},[1,2,3]);
var_dump($nubmers);

 

 

posted @ 2019-12-07 16:44  钧一  阅读(218)  评论(0)    收藏  举报