2017-11-27 9 views
1

python func(*[array])の機能に相当するPHPが、関数の引数として配列を使用する機能はありますか?私はオンラインで見つけられないようです。 PythonでPHPで配列を引数リストとして使用

使用例:任意の助けを事前に

def f(a,b): 
    print(a, b) 

f('abc', 'def') 
f(*['abc', 'def']) 

出力

abc def 
abc def 

感謝。

編集:これはthisとは異なります。なぜなら、この質問では配列をパラメータとして使用したいのに対し、配列は一連のパラメータとして使用したいからです。 5.6+でcall_user_func_array('f', ['abc', 'def']);

だろうPHP < 5.6では

+0

可能な複製(https://stackoverflow.com/questions/5459395/can-we-pass-an-array- [我々はPHPで任意の関数にパラメータとして配列を渡すことはできますか?] phpでの任意の関数としてのパラメータとして) –

答えて

4

は「...」に呼び出しから(残り)の引数を収集し、Argument unpackingで、関数定義で使用することができ、または関数の引数として与えられた...array()コール

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

echo add(...[1, 2])."\n"; 

$a = [1, 2]; 
echo add(...$a); 

配列変数:の

<?php 
function sum(...$numbers) { 
    $acc = 0; 
    foreach ($numbers as $n) { 
     $acc += $n; 
    } 
    return $acc; 
} 

echo sum(1, 2, 3, 4); 
2

、あなたの代わりにf(...['abc', 'def']);を行うことができます。

関連する問題