[PHP]写一个不定参数/可变参数的函数
php写一个不定参数/可变参数的函数有两种方式。
function foo()
{
$numargs = func_num_args();
echo "参数总数量: $numargs<br />\n";
if ($numargs >= 2) {
echo "如果参数总数量大于等于二,第二个参数为: " . func_get_arg(1) . "<br />\n";
}
$arg_list = func_get_args();
for ($i = 0; $i < $numargs; $i++) {
echo "下标 $i 参数为: " . $arg_list[$i] . "<br />\n";
}
}
foo(1, 2, 3);
func_get_args 返回一个包含函数参数列表的数组 PHP 4+
func_get_arg 返回参数列表的某一项 PHP 4+
func_num_args 返回传递给函数的参数数 PHP 4+
function sum(int ...$numbers) {
$acc = 0;
foreach ($numbers as $n) {
$acc += $n;
}
return $acc;
}
echo sum(1, 2, 3, 4);
int
为参数的类型,可以不指定参数类型,也可以指定为其他类型
例如:
function sum(...$numbers) {}
function sum(string ...$numbers) {}
function sum(array ...$numbers) {}
function sum($user, $name, string ...$numbers) {}
具体详情可参考函数的参数
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。
get