recherche

Maison  >  Questions et réponses  >  le corps du texte

Comment convertir un tableau en paramètres de fonction indépendants ?

Je souhaite utiliser les valeurs du tableau comme paramètres indépendants dans un appel de fonction. Exemple :

// Values "a" and "b"
$arr = array("alpha", "beta");
// ... are to be inserted as $a and $b.
my_func($a, $b)
function my_func($a,$b=NULL) { echo "{$a} - {$b}"; }

Le nombre de valeurs dans le tableau est inconnu.

Les solutions possibles sont  :

  1. Je peux transmettre le tableau en tant que paramètre unique, mais je préférerais le transmettre en tant que paramètres de fonction indépendants multiples.

  2. 将数组使用implode()函数连接成逗号分隔的字符串。(失败,因为它只是一个字符串。)

  3. Utilisez un seul paramètre :

    $str = "'a','b'";
    function goat($str);  // $str needs to be parsed as two independent values/variables.
  4. Utiliser eval()?

  5. Tableau traversant ?

Suggestions bienvenues. Merci.

P粉391677921P粉391677921554 Il y a quelques jours551

répondre à tous(2)je répondrai

  • P粉071602406

    P粉0716024062023-07-23 22:33:24

    Si je vous comprends bien :

    $arr = array("alpha", "beta");
    call_user_func_array('my_func', $arr);

    répondre
    0
  • P粉063039990

    P粉0630399902023-07-23 16:28:10

    Cette question est assez ancienne, mais il existe un support plus direct dans PHP 5.6+.

    http://php.net/manual/en/functions.arguments.php#functions.variable-arg-list.new

    $arr = array("alpha", "beta");
    my_func(...$arr);

    répondre
    0
  • Annulerrépondre