PHP中的函数(包括类中的方法)参数数目是可以不固定的。
如果我们不去定义参数的话,在函数内部使用func_get_args()函数就可以获得参数列表,使用func_num_args()就可以获得参数的数量。这样一来,调用时可以为函数指定任意参数。
以上就是可变参数的原理。
下面我们来看一个例子:
<?php
/**
* 定义函数
*/
function muti_args_func(){
$nums = func_num_args();
$args = func_get_args();
$total = 0;
for ($i = 0; $i < $nums; $i++){
if (is_int($args[$i])){
$total += $args[$i];
}
}
echo "您传入的参数个数为"+$nums+"个;<br>\n";
echo "其中整数参数的和为"+$nums+"。<br>\n";
}
// 调用函数
muti_args_func(12,2,7,"其它类型参数",4,22,"啥");
?>
通过以上讲述和例子,相信大家对PHP创建可变参数的函数/方法有更多的了解。
