关于php魔术方法的理解__call()

时间:2013-04-01 20:41:09

标签: php oop

     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

问题:为什么参数计数为1而不是3?哪里错了?

1 个答案:

答案 0 :(得分:0)

脚本不计算数组中的项,只计算参数号,唯一的参数是$ arr。

您需要使用以下方式计算项目:

count($arr);