5.2.3 匿名函数

所谓匿名,就是没有名字。

匿名函数,也就是没有函数名的函数。

匿名函数的第一种用法,直接把赋数赋值给变量,调用变量即为调用函数。

匿名函数的写法比较灵活。

1.变量函数式的匿名函数

$greet = function($name)
{

echo $name.",你好";

};

$greet("明天");
$greet("PHP学院");

上例中的函数体没有函数名,通过$greent加上括号来调用的,这就是匿名函数。

2.回调式的匿名函数

我们将之前的例子拿过来。实际使用场景中,我们要通过一个函数实现更多的功能。但是,我又不想专门定义一个函数。我们回顾一下,我们回调函数的例子:

function woziji($one,$two,$func){
		//我规定:检查$func是否是函数,如果不是函数停止执行本段代码,返回false
		if(!is_callable($func)){
				return false;
		}

		//我把$one、$two相加,再把$one和$two传入$func这个函数中处理一次
		//$func是一个变量函数,参见变量函数这一章
		echo $one + $two + $func($one,$two);

}

woziji(20,30,function( $foo , $bar){

		        $result = ($foo+$bar)*2;

		        return $result;

            }
);

仔细推理一下过程哟。只不过在之前的章节当中,plusx2换成了我们的匿名函数:

<?php

function( $foo , $bar){

		$result = ($foo+$bar)*2;

		return $result;

}
?>

因此,函名函数在调用的时候没有函数名。我们可以采用以上的一些方法来使用匿名函数。

文章导航