你可能知道PHP允许你定义一个默认参数的函数。但你可能并不知道PHP还允许你定义一个完全任意的参数的函数
下面是一个示例向你展示了默认参数的函数:
<?php
// 两个默认参数的函数
function foo($arg1 = '', $arg2 = '') {
echo "arg1: $arg1\n";
echo "arg2: $arg2\n";
}
foo('hello','world');
foo();
?>
现在我们来看一看一个不定参数的函数,其使用到了func_get_args()方法:
<?php
function foo() {
// 取得所有的传入参数的数组
$args = func_get_args();
foreach ($args as $k => $v) {
echo "arg".($k+1).": $v\n";
}
}
foo();
foo('hello');
foo('hello', 'world', 'again');
?>
func_get_args()方法用于返回function的参数列表,返回值是一个数组。
2016-11-15 备注
PHP 5.6 及以上版本可以使用更简单的方式使用任意数量的参数:
function foo(...$args)
{
foreach ($args as $k => $v) {
echo "arg" . ($k + 1) . ": $v \n";
}
}
Comments
注:如果长时间无法加载,请针对 disq.us | disquscdn.com | disqus.com 启用代理。