gpt4 book ai didi

php在实例中设置一个匿名函数

转载 作者:可可西里 更新时间:2023-11-01 12:42:41 25 4
gpt4 key购买 nike

我刚开始使用 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在实例中设置一个匿名函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3034067/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com