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

 回调函数和匿名函数的意义


回调函数:

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

	//主调函数
	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 world
	foo('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


欢迎大家指正错误。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值