0
class My_class {
public function __call($name, $arguments) {
echo "Called method ".$name.", arguments count is: ".count($arguments);
}
}
$obj = new My_class();
$arr = array(1,2,3);
$obj->blabla($arr);
结果是:Called method blabla, arguments count is: 1
误解在PHP的魔术方法__call()
问:为什么参数计数为1
,而不是3
?我错在哪里?
因为你正在传递一个参数 - 数组。如果你想要三个 - 使用'$ obj-> blabla(1,2,3)' – J0HN
@ J0HN来调用它,谢谢,(但是我需要更多的字符来发布这个) – RIKI