美文网首页
PHP闭包函数(匿名函数)的简介和例子以及与JS的对比

PHP闭包函数(匿名函数)的简介和例子以及与JS的对比

作者: IT菌 | 来源:发表于2018-02-07 15:23 被阅读0次

    PHP自5.3版本开始就可以支持匿名函数(Anonymous functions)了,也成为闭包函数(closures),闭包函数允许临时创建一个没有指定名称的函数。最经常用作回调函数(callback)参数的值。闭包函数都是是通过 Closure 类来实现的。

    举一个闭包函数的栗子

    闭包函数也可以赋值给变量来使用,PHP 会自动把此种表达式转换成内置类 Closure 的对象。把一个 closure 对象赋值给一个变量的方式与普通变量赋值的语法一样,最后要加上分号结束这段语句,举一个闭包函数变量赋值的栗子

    除此之外闭包函数还可以从父作用域继承变量,任何这类变量都应该用 use 语言结构传递进去。 PHP 7.1 起,不能传入superglobals、 $this 或者和参数重名的变量。经常写js的同学应该知道js的闭包特性,简单的说就是在一个函数里可以定义子函数,父函数中的变量在子函数中可以直接使用,PHP的闭包有一点区别

    function func1($a){ return function() use ($a){ echo $a; }; }  $a = func1("a");  $a();//输出a

    下面是javascript闭包以及它的作用和应用场景

    ​PHP闭包函数(匿名函数)的简介和例子以及与JS的对比https://www.qwzyj.com/thread-161-1-1.html (出处: 全网资源菌)

    相关文章

      网友评论

          本文标题:PHP闭包函数(匿名函数)的简介和例子以及与JS的对比

          本文链接:https://www.haomeiwen.com/subject/utfazxtx.html