变量函数类似于可变变量,它的函数名为变量。使用变量函数可实现通过改变变量值得方法调用不同的函数。代码如下:
$func='noHtml';//讲一个函数名赋值给变量
echo $func($str);//相当于echo noHtml($str),输出结果为"abc"
$func='right';
echo $func($str,7);//相当于echo right($str,7),输出结果为"</font>"
可见,当某个变量名后有小括号是,PHP就回去找这个变量的值,然后运行和该值同名的函数。但变量函数不能用于语言结构,如变量值不能为echo、print、isset、empty、include、require等。
在PHP5.3以上版本中,开始支持匿名函数。匿名函数就是没有函数名的函数,例如:
<? $gret=function($name){//定义匿名函数,并将其赋给变量$greet
echo 'hello'.$name;};
$greet('World');//调用匿名函数,输出hello World
$greet('PHP');
?>
可见,为了调用匿名函数,常将匿名函数赋给一个变量,那么该变量就相当于函数名。但是用匿名函数更重要的原因,是为了实现函数的闭包。
本文均为荣益互联摘自权威资料,书籍,文章,或来自网络,如有版权纠纷或违规问题,请联系我们删除。我们欢迎您的分享,谢绝直接抄袭复制。感谢…