繁体   English   中英

在PHP类中调用匿名函数

[英]Calling anonymous functions in a PHP class

class Foo
{
    public $abc;

    function __construct() {
        $this->abc = function(){
            echo "new function";
        };
    }

    function Bar()
    {
        echo "This is Bar";
    }
}

$foo = new Foo();
$foo->Bar();  // echo "This is Bar"

如何从外部调用$abc变量函数?

abc不是Foo的方法,因此您不能只执行$foo->abc(); abc是一个属性。 您首先需要获取属性,然后调用它。

$abc = $foo->abc;
$abc();

演示: https : //eval.in/158342

另外,您可以使用call_user_func

call_user_func($foo->abc);

PHP 7开始,您可以执行以下操作:

($foo->abc)();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM