php在实例中设置匿名函数

前端之家收集整理的这篇文章主要介绍了php在实例中设置匿名函数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我刚刚开始使用 PHP,我想知道是否有办法将匿名函数添加到类实例中.

例如,让我们说……

class A{
    public B;
}

$c = new A();

//This is where I am getting a little confused...
//The following wont work

$c->B = function(){echo('HelloWorld');};
$c->B();

我希望做的是在大量不同的应用程序中重用相同的代码,并使其能够“替换”并替换特定实例中的函数.

我使用PHP5.3(所以匿名函数应该工作,只是不是我使用它们的方式).

非常感谢您的时间!

-GK

您可以将 __call魔术功能用于此作业.不是美女,但它有效..

像这样:

class A {
    public $B;

    public function __call($closure,$args)
    {
        call_user_func_array($this->$closure,$args);
    }
}

$c = new A();

$c->B = function () { echo('HelloWorld'); };
$c->B();

猜你在找的PHP相关文章