查看: 2556|回复: 0

[PHP学习] php可变长参数处理函数详解

发表于 2017-12-17 10:23:16

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

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

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

int func_num_args ( void )

示例:

  1. function open_database($DB, $cache_size_or_values=null, $cache_size=null)
  2. {
  3. switch (function_num_args())
  4. {
  5. case 1:
  6. $r = select_db($DB);
  7. break;
  8. case 2:
  9. $r = select_db($DB, $cache_size_or_values);
  10. break;
  11. case 3:
  12. $r = select_db($DB, $cache_size_or_values, $cache_size);
  13. break;
  14. }
  15. return is_resource($r);
  16. }
复制代码

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

mixed func_get_arg ( int arg_num)

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

  1. <?php
  2. function some_func($a, $b)
  3. {
  4. for($i = 0; $i<func_num_args(); ++$i)
  5. {
  6. $param = func_get_arg($i);
  7. echo "the param is $param\n"
  8. }
  9. }
  10. some_func(1,3,5,7,9);
  11. ?>
复制代码

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

array func_get_args ( void )

示例:

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

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php常用函数与技巧总结》、《php字符串(string)用法总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《PHP数组(Array)操作技巧大全》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。



回复

使用道具 举报