如何在php中将关联数组转换为函数参数


how to turn associative array into function parameters in php

有没有办法将关联数组转换为函数的参数。

我有一个简单的数组,比如:

$arr = [
  'id' => 321654,
  'name' => 'action1'
];

我在一个类中有一个静态函数:

class someclass{
  static function someFunction( $id, $name ){
     //the rest of the method
  }
}

我可以通过变量调用类,例如:

$class = 'someclass';
$method = 'somFunction';
return $class::$method(  );

我也可以通过是在一定数量的函数参数,或数组

return $class::$method( $arr );

在这个例子中,我可以将参数硬编码为:

return $class::$method( $arr['id'], $arr['name'] );

但是我该如何传递数量未知的钥匙呢。另一次运行可能包含1个键或4或10…

感谢@Rizier123评论:

这非常有效:

call_user_func_array( ''.$class.'::'.$method, $arr );