php为什么需要匿名函数
程序员文章站
2022-03-07 15:03:54
...
匿名函数(Anonymous functions),也叫闭包函数(closures),允许临时创建一个没有指定名称的函数。最经常用作回调函数(callback)参数的值。当然,也有其它应用的情况。
匿名函数目前是通过 Closure 类来实现的。
匿名函数示例(推荐学习:PHP编程从入门到精通)
<?php echo preg_replace_callback('~-([a-z])~', function ($match) { return strtoupper($match[1]); }, 'hello-world'); // 输出 helloWorld ?>
闭包函数也可以作为变量的值来使用。PHP 会自动把此种表达式转换成内置类 Closure 的对象实例。把一个 closure 对象赋值给一个变量的方式与普通变量赋值的语法是一样的,最后也要加上分号:
匿名函数变量赋值示例
<?php $greet = function($name) { printf("Hello %s\r\n", $name); }; $greet('World'); $greet('PHP'); ?>
闭包可以从父作用域中继承变量。 任何此类变量都应该用 use 语言结构传递进去。 PHP 7.1 起,不能传入此类变量: superglobals、 $this 或者和参数重名。
以上就是php为什么需要匿名函数的详细内容,更多请关注其它相关文章!
上一篇: mysql如何设置字符集为UTF8
下一篇: PHP获取IP地址的地区有关问题
推荐阅读
-
php 函数当中实现相同功能但是速度有差异的有哪些,为什么速度会有差异?
-
php的crc32函数使用时需要注意的问题(不然就是坑)
-
一些需要禁用的PHP危险函数(disable_functions)_PHP
-
为什么php手册中好多函数参数后面都有半个中括号?这些括号有什么意义昵?
-
php 匿名函数 use 怎么用?
-
PHP中GD库的官方站文档中有显示ImageGifAnimBegin这个函数,为什么小弟我用在PHP中会提示undefined function
-
php5.3匿名函数实现单例模式
-
php中两个**可以直接求一个数的n次方 为什么还要有pow()函数
-
php匿名函数应用场景
-
匿名函数以及为什么要在匿名函数前面加“!”或者“;”