call_user_func_array 引用的问题.

<?php
class tests{
    public function __call($m, $args)
    {
        //$m = test
        call_user_func_array($m,$args);
    }

    // 移除test方法后会报错..
    public function test(&$a){
        $a = $a + 1000;
    }
}

// run.
function test(&$a){
    $a ++;
}

$cls = new tests();

$a  = 100;
$cls->test($a);

//test($a); // 101

echo ($a);
?>

1: call_user_func_array 优先调用自身的方法? 不需要加类对象?
2: 移除类test方法后, 让它调用test函数. 会报错误.
Warning: Parameter 1 to test() expected to be a reference, value given i

请问, 怎么才能够让它调用引用函数?

阅读 2.3k
1 个回答

你不看文档吗,里面说了call_user_func和call_user_func_array不能按引用传参的

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题