在 PHP 中你可以这样做:
function something() {
foreach (func_get_args() as $arg)
echo $arg;
}
something(1, 3); //echoes "13"
这对于按值传递的参数来说效果很好,但是如果我希望它们按引用传递怎么办?像这样:
function something_else() {
foreach (func_get_args() as $arg)
$arg *= 2;
}
$a = 1;
$b = 3;
something_else($a, $b);
echo $a . $b; //should echo "26", but returns "13" when I try it
这在 PHP 中可行吗?
最佳答案
这个问题看起来很可怕,但让我们幽默一下。下面是一个可怕的 hack,但您可以发送一个参数,其中包含您要使用的项目。
function something_else($args) {
foreach ($args as &$arg) {
$arg *= 2;
}
}
$a = 1;
$b = 3;
something_else(array(&$a, &$b));
echo $a . $b; // 26
关于php - 函数中的可变长度引用参数列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7680003/