PHPで引数の配列を展開する 質問する

PHPで引数の配列を展開する 質問する

Python では、次のようにタプルのリストを展開し、関数に引数として渡すための「*」演算子が提供されています。

args = [3, 6]
range(*args)            # call with arguments unpacked from a list

これは次と同等です:

range(3, 6)

PHP でこれを実現する方法があるかどうか、誰か知っていますか? 「PHP Unpack」のバリエーションを Google で検索しても、すぐには何も出てきません。PHP では別の名前になっているのでしょうか?

ベストアンサー1

php5.6 ...(スプラット演算子)による引数の展開が追加されました。これを使用すると、より単純な代替手段を使用することができますcall_user_func_array()。たとえば、関数は次のようになります。

function add($a, $b){
  return $a + $b;
}

配列を使用します$list = [4, 6];(php5.5 以降では、この方法で配列を宣言できます)。

次のように関数を呼び出すことができます...:

echo add(...$list);

おすすめ記事