Rumah > Artikel > pembangunan bahagian belakang > php实现可变长参数处理函数详解
这篇文章主要介绍了php可变长参数处理函数,结合实例形式分析了func_num_args()、func_get_arg()及func_get_args()三个可变长参数处理函数功能及使用方法,需要的朋友可以参考下
具体如下:
与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); ?>
以上就是本文的全部内容,希望对大家的学习有所帮助。
相关推荐:
IE浏览器与FF浏览器关于Ajax传递参数值为中文时的区别实例分析
Atas ialah kandungan terperinci php实现可变长参数处理函数详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!