美文网首页
php匿名函数和闭包

php匿名函数和闭包

作者: 信仰与初衷 | 来源:发表于2018-10-14 21:43 被阅读0次

JavaScript中匿名函数和闭包可以说是非常灵活的特性了,它的使用可以帮助快速写出很简洁的代码。其实呢,PHP也有匿名函数和闭包,用法如下:


1.匿名函数

# 声明一个函数
$test_closure1 = function($arg1, $arg2) {
    return $arg1 . 'hello world!';
}

# 声明一个函数,并将外部变量传入函数
$global_param = 'martin';
$test_closure2 = function($arg1, $arg2) use($global_param){
    return $arg1 . 'hello world!' . $global_param;
}

# 调用
call_user_func_array($test_closure1, ['您好', '大家好']);
call_user_func_array($test_closure2, ['您好', '大家好']);

2.闭包

//例子1:在函数里定义一个匿名函数,并且调用它
function test1() {
    $func = function( $str ) {
        echo $str;
    };
    $func( 'hello world! );
}

//例子2:在函数中把匿名函数返回,并且调用它
function test2() {
    $func = function( $str ) {
        echo $str;
    };
    return $func;
}

# 调用
test1();
$test2_func = test2();
$test2_func('hello world');

php的匿名函数和闭包还不像JavaScript的匿名函数闭包那么灵活好用,但有时候也是可以帮助你解决一些特殊的场景的,期待它以后会更加好用。

相关文章

  • Modern PHP : 闭包和匿名函数

    Modern PHP : 闭包和匿名函数

  • php中的匿名函数和闭包

    php中的匿名函数和闭包(closure) 一:匿名函数 (在php5.3.0 或以上才能使用) php中的匿名函...

  • PHP新特性之闭包、匿名函数

    闭包 闭包是什么? 1).闭包和匿名函数在PHP5.3中被引入。2).闭包是指在创建时封装函数周围状态的函数,即使...

  • php闭包函数(Closure)

    匿名函数 提到闭包就不得不想起匿名函数,也叫闭包函数(closures),貌似PHP闭包实现主要就是靠它。声明一个...

  • PHP闭包(Closure)初探

    匿名函数 提到闭包就不得不想起匿名函数,也叫闭包函数(closures),貌似PHP闭包实现主要就是靠它。声明一个...

  • [正儿八经PHP]PHP闭包(Closure)初探

    匿名函数 提到闭包就不得不想起匿名函数,也叫闭包函数(closures),貌似PHP闭包实现主要就是靠它。声明一个...

  • PHP 闭包

    闭包和匿名函数在php5.3中引入,闭包是指的创建时封装周围状态的函数,即便闭包所在的环境不存在了,闭包中封装的状...

  • php之闭包函数(Closure)

    php闭包函数(Closure) JS闭包 js和php闭包使用和区别

  • 计算机概念100

    php闭包: 匿名函数 a){}程序闭包: 就是函数内部的函数流式文件: 二进制文件(不受物理符号(如回车符)...

  • php匿名函数和闭包

    JavaScript中匿名函数和闭包可以说是非常灵活的特性了,它的使用可以帮助快速写出很简洁的代码。其实呢,PHP...

网友评论

      本文标题:php匿名函数和闭包

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