php自定义函数之匿名函数

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

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

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

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

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

<?php
$greet = function($name)
{
 echo $name.',你好';
};
$greet('明天');
$greet('PHP中文网');
?>

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

2.回调式的匿名函数

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

<?php
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;

}
?>

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


继续学习
||
<?php function( $foo , $bar){ $result = ($foo+$bar)*2; return $result; } ?>
提交重置代码
章节
笔记
提问
课件
反馈
捐赠

php入门教程之一周学会PHP

高并发千万级数据库系统解决方案
  • 推荐课程
  • 评论
  • 问答
  • 笔记
  • 课件下载

温如玉

这个编辑器不行啊aaaaa

4年前    添加回复 0

LEFAN

大括号后面的分号是什么意思阿? 解答:因为此大括号对应的是WOZIJI这个函数的调用,不要被中间的花括号混淆了

5年前    添加回复 0

水之蓝色

这里评论的字数设置太少了吧?不能超过300,意思还没表达完,就显示不了了,该改改了啊

5年前    添加回复 0

水之蓝色

<?php function woziji($one,$two,$func){ } echo $one + $two + $func($one,$two); } woziji(20,30,function( $foo , $bar){ $result = ($f

5年前    添加回复 0

Wong

继续学习

6年前    添加回复 0

τ、過客

$greet的变量后面是变量的值,所以大括号后面带分号

6年前    添加回复 0

τ、過客

真的,大牛的世界你不懂

6年前    添加回复 0

青草地

赋值就是建立函数,这操作我也是醉了。 PHP中的赋值原来这么强大!!!简直是万能语句啊

6年前    添加回复 0

τ、過客

大括号后面的分号是什么意思阿?

6年前    添加回复 0

τ、過客

echo $name.",你好";};这个具体是什么?

6年前    添加回复 0

折印

回楼下,在这是$greent的赋值

6年前    添加回复 0

PHPer

{ echo $name.',你好'; }; 我想问一下,为啥这个地方要加分号,其他函数为啥不加呢。

6年前    添加回复 0

phpcn_u54803

没有人发言吗?我发个言支持一下老师,谢谢

6年前    添加回复 0

能否实现换行?

[最新 小草 的回答] ""这样 

时间:5年前

课件暂不提供下载,工作人员正在整理中,后期请多关注该课程~