浅谈php中的回调函数和匿名函数

来源:互联网 发布:java标识符 编辑:程序博客网 时间:2024/05/17 22:06
回调函数和匿名函数的意义


回调函数:

        简单的讲就是在调用函数的时候,通过在形参传入一个函数(我们称他为回调函数),来干预主调函数的运行,从而得到不同的结果

//主调函数function foo($str,$callback){$callback($str);}//回调函数1,用此函数直接在页面输出主调函数参数1传入的字符串function callback1($str){echo $str;}//回调函数2,用此函数在页面输出主调函数参数1传入的字符串的长度function callback2($str){echo strlen($str);}


        理想中回调函数的用法:

foo('hello world',callback1);//此时输出hello worldfoo('hello world' callback2);//此时输出11


        但是php中并不支持这种用法,所以就要用到匿名函数的概念

        foo('callback1');//输出hello world
        此时主调函数中$callback($str);就相当于callback1($str);


        匿名函数的其他用法:

           $callback = function ($str){echo strlen($str);};   foo($callback);//输出11

        foo(function ($str){echo strlen($str);});   //输出11


相关链接:http://bbs.csdn.net/topics/390667186


欢迎大家指正错误。

原创粉丝点击