php中的闭包

php也可以像javascript一样,让函数作为参数传递,增大程序的灵活度。

$callback = function($name) {//创建一个匿名函数

       echo $name;

};

 

 

//和javascript中的匿名函数一样调用

$callback(‘panda’);

 

注:php中的匿名函数一定不能有名字 比如 $callbakck = function a() {}; 会有语法错误,

 

闭包: 计数器

 


<?php

function counter() {

        $count = 0;


        return function() use (&$count) {//引用&上级函数的$count变量;


            return ++$count;


        };


    }


   


    $counter = counter();


   


    for($i=0; $i<10; $i++) {


        echo $counter() , '<br />';


    }

 

 

posted on 2013-03-05 13:32  mtima  阅读(122)  评论(0编辑  收藏  举报

导航