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


Posted in PHP onFebruary 22, 2017

本文实例讲述了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程序设计有所帮助。

PHP 相关文章推荐
Zend Studio for Eclipse的java.lang.NullPointerException错误的解决方法
Dec 06 PHP
php 上传文件类型判断函数(避免上传漏洞 )
Jun 08 PHP
spl_autoload_register与autoload的区别详解
Jun 03 PHP
CI框架在CLI下执行占用内存过大问题的解决方法
Jun 17 PHP
php实现的返回数据格式化类实例
Sep 22 PHP
php中simplexml_load_file函数用法实例
Nov 12 PHP
php支付宝手机网页支付类实例
Mar 04 PHP
PHP编写daemon process 实例详解
Nov 13 PHP
PHP编程计算文件或数组中单词出现频率的方法
May 22 PHP
php写入文件不覆盖的实例讲解
Sep 17 PHP
PHP使用JpGraph绘制折线图操作示例【附源码下载】
Oct 18 PHP
解析laravel使用workerman用户交互、服务器交互
Apr 28 PHP
php操作access数据库的方法详解
Feb 22 #PHP
Smarty3配置及入门语法
Feb 22 #PHP
PHP中ajax无刷新上传图片与图片下载功能
Feb 21 #PHP
PHP+JavaScript实现无刷新上传图片
Feb 21 #PHP
PHP编辑器PhpStrom运行缓慢问题
Feb 21 #PHP
如何离线执行php任务
Feb 21 #PHP
PHP实现上传多文件示例代码
Feb 20 #PHP
You might like
Yii中表单用法实例详解
2016/01/05 PHP
PHP序列化操作方法分析
2016/09/28 PHP
PHP实现数据四舍五入的方法小结【4种方法】
2019/03/27 PHP
Javascript JSQL,SQL无处不在,
2010/05/05 Javascript
jQuery获取CSS样式中的颜色值的问题,不同浏览器格式不同的解决办法
2013/05/13 Javascript
Jquery ajax执行顺序 返回自定义错误信息(实例讲解)
2013/11/06 Javascript
完美兼容各大浏览器的jQuery仿新浪图文淡入淡出间歇滚动特效
2014/11/12 Javascript
HTML页面,测试JS对C函数的调用简单实例
2016/08/09 Javascript
jquery自定义插件结合baiduTemplate.js实现异步刷新(附源码)
2016/12/22 Javascript
AngularJS使用angular.bootstrap完成模块手动加载的方法分析
2017/01/19 Javascript
js中字符型和数值型数字的互相转化方法(必看)
2017/04/25 Javascript
Vue.js表单标签中的单选按钮、复选按钮和下拉列表的取值问题
2017/11/22 Javascript
vue 实现左右拖拽元素并且不超过他的父元素的宽度
2018/11/30 Javascript
Vue使用NProgress进度条的方法
2019/09/21 Javascript
Python使用Scrapy爬取妹子图
2015/05/28 Python
python字典快速保存于读取的方法
2018/03/23 Python
Python延时操作实现方法示例
2018/08/14 Python
python实现归并排序算法
2018/11/22 Python
python对文件目录的操作方法实例总结
2019/06/24 Python
Python-opencv实现红绿两色识别操作
2020/06/04 Python
多视角3D逼真HTML5水波动画
2016/03/03 HTML / CSS
Solid & Striped官网:美国泳装品牌
2019/06/19 全球购物
美国第一大药店连锁机构:Walgreens(沃尔格林)
2019/10/10 全球购物
如何获取某个日期是当月的最后一天
2013/12/05 面试题
C#面试题
2016/05/06 面试题
shell程序如何生命变量?shell变量是弱变量吗?
2014/11/10 面试题
企业演讲稿范文大全
2014/05/20 职场文书
管理提升方案
2014/06/04 职场文书
公司总经理任命书
2014/06/05 职场文书
小学社会实践活动总结
2014/07/03 职场文书
行政管理专业求职信
2014/07/06 职场文书
委托证明模板
2014/09/16 职场文书
2015年端午节活动策划书
2015/05/05 职场文书
2015年信息宣传工作总结
2015/05/26 职场文书
表扬信范文
2019/04/22 职场文书
婚礼必备主持词范本!
2019/07/23 职场文书