我在 PHP 7 中定义了一个 varargs 类型方法
function selectAll(string $sql, ...$params) { }
我遇到的问题是,有时我想在我已经有一个数组时调用此方法,而我不能直接将数组变量传递给此方法。
使用 splat 运算符解压缩数组参数,就像您在函数中使用的一样:
selectAll($str, ...$arr);
所以像这样:
function selectAll(string $sql, ...$params) {
print_r(func_get_args());
}
$str = "This is a string";
$arr = ["First Element", "Second Element", 3];
selectAll($str, ...$arr);
指纹:
Array
(
[0] => This is a string
[1] => First Element
[2] => Second Element
[3] => 3
)
为此评估。
如果你在参数中不使用 splat 运算符,你最终会像这样