类变量函数

时间:2013-04-08 21:04:23

标签: php callable

Say $this->varname等于is_callable()返回true的字符串。要打电话给我,我必须做$temp = $this->varname; $temp();或......还有另一种方式我可以调用它而不必创建两行吗?

只做$temp = $this->varname()的问题是,它会尝试调用名为varname()的类中的方法 - 它不会在$ this-> varname上调用该函数。

谢谢!

2 个答案:

答案 0 :(得分:1)

另一个选项是call_user_func

call_user_func($this->varname);

答案 1 :(得分:1)

您必须这样做或使用call_user_func(_array)。或者正如安东尼向我建议的内部(http://www.mail-archive.com/internals@lists.php.net/msg64647.html)你可以做${'_'.!$_=$this->varname}();

已经存在对PHP的拉取请求,正在内部讨论:https://github.com/php/php-src/pull/301(和rfc https://wiki.php.net/rfc/fcallfcall

相关问题