使用引用的PHP回调

使用引用的PHP回调,php,reference,callback,Php,Reference,Callback,我有: 为什么会出现这种情况: function increment(&$var) { $var++; } $a = 0; call_user_func('increment', $a); echo $a."\n"; 而$a仍然是0。为什么会这样 任何对官方文档的引用都会有所帮助。说“注意:注意call_user_func()的参数不是通过引用传递的。” 你可以用它来代替 从的文档中: function increment(&$a) { $a++; } $x

我有:

为什么会出现这种情况:

function increment(&$var)
{
    $var++;
}

$a = 0;
call_user_func('increment', $a);
echo $a."\n";
而$a仍然是0。为什么会这样

任何对官方文档的引用都会有所帮助。

说“注意:注意call_user_func()的参数不是通过引用传递的。”

你可以用它来代替


的文档中:

function increment(&$a) {
    $a++;
}

$x = 1;

call_user_func_array("increment", array(&$x));

echo $x;
调用第一个参数给出的回调,并将其余参数作为参数传递

这就是使用而不是所需的:

function increment(&$a) {
    $a++;
}

$x = 1;

call_user_func_array("increment", array(&$x));

echo $x;
相关:
<?php
function increment(&$var)
{
    $var++;
}

$a = 0;
call_user_func_array("increment", array(&$a));
echo $a."\n";