PHP解构为命名函数参数

  • 本文关键字:函数 参数 PHP php php-8
  • 更新时间 :
  • 英文 :


我想将一个数组的值解构为函数命名的参数,而不关心数组值的顺序。

的例子:

$functionParams = [$name, $lastname, $age, $randomparam];
function x($age, $name, $randomparam, $lastname){
}
x(...functionParams);

这行不通,因为它没有相同的顺序,

我希望我的解构符合命名参数之类的东西,如

x(...functionParams) -> x(name: $name, lastname: $lastname, age: $age, randomparam: $randomparam)

有什么方法可以做到这一点吗?对不起,如果我的解释不正确

多亏了Martin的回答,我才得以实现。

  1. 我们可以使用关联数组代替普通数组。
  2. 紧凑()

$functionParams = [$name, $lastname, $age, $randomparam];

我们所做的

$functionParamsCompact = compact('name', 'lastname', 'age', 'randomparam');

那么我们就可以用x(...functionParamsCompact)

压缩函数文档

最新更新