php教程

超轻量级php框架startmvc

php可变长参数处理函数详解

更新时间:2020-03-17 22:54:27 作者:startmvc
本文实例讲述了php可变长参数处理函数。分享给大家供大家参考,具体如下:与C++一样,PHP

本文实例讲述了php可变长参数处理函数。分享给大家供大家参考,具体如下:

与C++一样,PHP中也可以对含有可变参数的函数进行处理,道理都一样,需要函数来专门处理参数列表。PHP中提供了三个相关的函数:

1. func_num_args()  -- 返回传递给函数的参数个数

int func_num_args ( void )

示例:


function open_database($DB, $cache_size_or_values=null, $cache_size=null)
{
 switch (function_num_args())
 {
 case 1:
 $r = select_db($DB);
 break;
 case 2:
 $r = select_db($DB, $cache_size_or_values);
 break;
 case 3:
 $r = select_db($DB, $cache_size_or_values, $cache_size);
 break;
 }
 return is_resource($r);
}

2. func_get_arg()  -- 返回指定的参数

mixed func_get_arg ( int arg_num)

参数列表中的第一个参数的 arg_num 是0


<?php
 function some_func($a, $b)
 {
 for($i = 0; $i<func_num_args(); ++$i)
 {
 $param = func_get_arg($i);
 echo "the param is $param\n"
 }
 }
 some_func(1,3,5,7,9);
?>

3. func_get_args()  -- 以数组的形式返回参数列表

array func_get_args ( void )

示例:


<?php
 function some_other_func($a, $b)
 {
 $param = func_get_args();
 $param = join(", ", $param); // 分解显示
 echo "the arglist is: $param\n";
 }
 some_other_func(1,3,5,7,9);
?>

php 可变长参数 处理 函数