美文网首页
PHP闭包实现

PHP闭包实现

作者: 一梦三四年lyp | 来源:发表于2019-03-14 10:00 被阅读0次

    闭包是指在创建时封装周围状态的函数。即使闭包所在的环境不在了,闭包中封装的状态依旧存在。注意在php中匿名函数=闭包函数。这点要个js区分开来。

    function Car ($name,$name1) {
        return function ($status,$status1) use ($name,$name1) {
    
                return sprintf("car %s is %s and %s is %s ",$name,$status,$name1,$status1);
    
        };
    
    }
    //调用函数返回一个闭包,闭包保存了之前的状态
    $car = Car("bmw","byD");
    //var_dump($car);die; 
    //调用闭包,闭包对象实现了__invoke魔术方法,只要变量名后面有(),PHP就会查找并调用__invoke()方法
    echo $car("running","stop");
    //返回 car bmw is running and byD is stop

    相关文章

      网友评论

          本文标题:PHP闭包实现

          本文链接:https://www.haomeiwen.com/subject/tngfmqtx.html