将数组作为参数传递,而不是数组
在 PHP 中,有多种方法将数组作为参数列表传递给功能。这可以使用展开运算符 (...) 或 call_user_func_array() 来实现。让我们探索这些方法:
扩展运算符(PHP 5.6 中引入)
扩展运算符,也称为“splat 运算符”,是一种简洁且高性能的方法将数组解压为参数。
function variadic(...$args) { echo implode(' ', $args); } $array = ['Hello', 'World']; // Splatting the $array variadic(...$array); // Output: 'Hello World'
请注意,索引数组项映射到基于参数
call_user_func_array()
call_user_func_array() 是一种效率较低但在将数组作为参数传递时仍然有用的方法。
function variadic($arg1, $arg2) { echo $arg1 . ' ' . $arg2; } $array = ['Hello', 'World']; // Using call_user_func_array() call_user_func_array('variadic', $array); // Output: 'Hello World'
在 PHP 8 中,您可以在将扩展运算符与关联函数一起使用时利用命名参数数组:
function variadic(string $arg2, string $arg1) { echo $arg1 . ' ' . $arg2; } $array = ['arg2' => 'Hello', 'arg1' => 'World']; variadic(...$array); // Output: 'World Hello'
扩展运算符是推荐的方法,因为它具有卓越的性能和便利性。
以上是如何在 PHP 中将数组作为参数传递给函数?的详细内容。更多信息请关注PHP中文网其他相关文章!