如何通过名称调用普通(非静态)类函数?
下面给出了一个错误,指出 param 1 需要是一个有效的回调。我不希望该函数是静态的,我希望它是一个普通的函数,并且到目前为止我看到的所有示例都将它们设为静态。
class Player
{
public function SayHi() { print("Hi"); }
}
$player = new Player();
call_user_func($Player, 'SayHi');
The callback http://www.php.net/manual/en/language.types.callable.phpPHP 中的语法有点奇怪。您需要做的是创建一个数组。第一个元素是对象,第二个元素是方法。
call_user_func(array($player, 'SayHi'));
你也可以不这样做call_user_func
:
$player->{'SayHi'}();
Or:
$method = 'SayHi';
$player->$method();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)