V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
moult
V2EX  ›  PHP

PHP 有没有花式定义函数的办法?

  •  
  •   moult · 2017-01-20 15:20:29 +08:00 · 1780 次点击
    这是一个创建于 2651 天前的主题,其中的信息可能已经有所发展或是发生改变。
    $funcList = array(
        'foo' => function(){},
        'bar' => function(){}
    );
    foreach($funcList as $funcName=>$closure){
        // 循环将 funcList 里面的函数抽取到外面!
        // function $funcName{ $closure(); }
    }
    
    2 条回复    2017-01-21 12:55:30 +08:00
    holyghost
        1
    holyghost  
       2017-01-20 15:27:34 +08:00
    ```
    <?php

    class a {
    protected $x = "x";

    public function xy() {
    $funcList = array(
    'foo' => function() { echo "a"; },
    'bar' => function() { echo "b"; }
    );

    foreach ($funcList as $funcName => $closure) {
    $closure();
    }
    }
    }

    $a = new a();
    $a->xy();
    ```


    或者


    ```
    <?php

    class b {}

    $obj = new b();
    $obj->yz = function () {
    return 'b';
    };
    echo($obj->yz->__invoke());
    ```

    不过。。。。有啥意义么
    claysec
        2
    claysec  
       2017-01-21 12:55:30 +08:00
    @holyghost 绕过 WAF -_-
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5416 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 05:46 · PVG 13:46 · LAX 22:46 · JFK 01:46
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.