Passer un tableau en tant qu'arguments, pas un tableau
En PHP, il existe des moyens de transmettre un tableau sous forme de liste d'arguments à un fonction. Ceci peut être réalisé en utilisant l'opérateur spread (...) ou call_user_func_array(). Explorons les méthodes :
Opérateur Spread (introduit dans PHP 5.6)
L'opérateur spread, également connu sous le nom d'"opérateur splat", est un moyen concis et performant pour décompresser un tableau en tant qu'arguments.
function variadic(...$args) { echo implode(' ', $args); } $array = ['Hello', 'World']; // Splatting the $array variadic(...$array); // Output: 'Hello World'
Notez que les éléments de tableau indexés sont mappés à des arguments en fonction de leur position, et non clés.
call_user_func_array()
call_user_func_array() est une méthode moins efficace mais toujours utile pour transmettre un tableau en tant qu'arguments.
function variadic($arg1, $arg2) { echo $arg1 . ' ' . $arg2; } $array = ['Hello', 'World']; // Using call_user_func_array() call_user_func_array('variadic', $array); // Output: 'Hello World'
En PHP 8, vous pouvez exploiter les arguments nommés lorsque vous utilisez l'opérateur spread avec associatif tableaux :
function variadic(string $arg2, string $arg1) { echo $arg1 . ' ' . $arg2; } $array = ['arg2' => 'Hello', 'arg1' => 'World']; variadic(...$array); // Output: 'World Hello'
L'opérateur de propagation est la méthode recommandée en raison de ses performances et de sa commodité supérieures.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!