我有一个功能
function xyz ($var1, $var2) {
// do stuff
}
和一个数组
$array = ['foo', 'bar' ...];
现在我想将所有数组元素作为单独的参数传递给函数。
我该如何自动执行此操作?
我当然可以这样做
$rfc = new ReflectionFunction('xyz');
$argCount = $rfc->getNumberOfRequiredParameters();
switch ($argCount) {
case 1:
xyz(array[0]);
break;
case 2:
xyz($array[0], $array[1]);
break;
...
}
但是有更好的方法吗?
答案 0 :(得分:1)
在PHP> = 5.6中,您实际上可以使用variadic arguments (the splat operator),如果它们未在函数中使用,则会忽略其他参数。
// ----
// Sass (v3.4.21)
// Compass (v1.0.3)
// ----
$defaultColor: black;
$gold: gold;
// Block
.btn {
color: $defaultColor;
padding: 20px;
// Element
&__span{
font-weight: 600;
}
// Modifier
&--no-padding{
padding: 0;
}
// Modifier
&--gold{
color: $gold;
}
}