PHP5 有一个“魔术方法” __call()
,可以在调用未定义方法时调用的任何类上定义它——它大致相当于 Rubymethod_missing
或 Perl 的AUTOLOAD
. 是否有可能在旧版本的 PHP 中做这样的事情?
jes5199
问问题
1109 次
2 回答
2
我缺少的最重要的一点是__call
存在于 PHP4 中,但是您必须通过调用在每个类的基础上启用它overload()
,如php docs here中所示。不幸的是, __call() 函数签名在 PHP4 和 PHP5 之间是不同的,并且似乎没有一种方法可以在两者中运行。
于 2008-09-22T00:02:50.360 回答
0
我记得使用它,并且有点谷歌搜索表明
function __call($method_name, $parameters, &$return)
{
$return_value = "You called ${method_name}!";
}
作为成员函数将完成这项工作。
于 2008-09-16T20:10:23.480 回答