PHP可变参数列表的用法(附带实例)
在 PHP 中,还有一种参数传递方式,叫做可变参数列表,可以在自定义函数中将需要传送的参数一一列出,然后使用指定的函数来获得参数。
简单来说,可变参数的函数可以根据传入的不同参数进行不同处理。下面介绍 3 个在创建自定义函数时会用到的内置函数:
【实例 1】使用 func_get_args() 函数输出参数的值。
上述代码可使用 foreach 语句来实现。
【实例 2】用 foreach 语句改写实例 1 中的代码。
简单来说,可变参数的函数可以根据传入的不同参数进行不同处理。下面介绍 3 个在创建自定义函数时会用到的内置函数:
- func_num_args() 函数。该函数返回自定义函数中传入的参数个数,即目前传入参数的数量。基本格式为func_num_args(void)。
- func_get_arg() 函数。该函数可以获取指定参数的值。如果要获取第1个参数的值,那么传入值为 0。它可以结合func_num_args()函数自动获取传递的参数。基本格式为 func_num_arg($arg_num)。
- func_get_args() 函数。该函数返回包含所有参数的值,基本格式为 func_get_args(void)。
【实例 1】使用 func_get_args() 函数输出参数的值。
<?php function get(){ $total=func_num_args(); echo "参数总数为".$total."<br>"; $test=func_get_args(); for($i=0;$i<$total;$i++) echo "第".($i+1)."个参数是".$test[$i]."<br>"; } get("菲菲",3,"海南","唱歌跳舞"); ?>运行结果为:
参数总数为4
第1个参数是菲菲
第2个参数是3
第3个参数是海南
第4个参数是唱歌跳舞
上述代码可使用 foreach 语句来实现。
【实例 2】用 foreach 语句改写实例 1 中的代码。
<?php function get(){ $total=func_num_args(); echo "参数总数为".$total."<br>"; $test=func_get_args(); foreach($test as $key=>$value) echo "第".$key."个参数是".$value."<br>"; } get("菲菲",3,"海南","唱歌跳舞"); ?>