如何传递对call_user_func的引用?

时间:2012-12-10 09:49:44

标签: php reference callback

考虑以下示例:

function myTest(&$var)
{ 
    $var++;
    echo "var = {$var}\n";
}

$x = 42;
call_user_func('myTest', $x);

显示警告:

  

警告:参数1到myTest()应该是一个引用值   在/home/alain/workspace/echo/echo.php(57)中给出:eval()'d代码   第7行

注意:代码写在在线沙箱上,解释了eval。

知道我如何传递对call_user_func家庭功能的引用吗?

1 个答案:

答案 0 :(得分:34)

我在PHP manual上找到了答案:

  

注意:

     

请注意,call_user_func()的参数不会传递   参考

他们也提供了完成这项工作的技巧:

$x = 42;
call_user_func_array('myTest', array(&$x));