解析func_num_args与func_get_args函数的使用


Posted in PHP onJune 24, 2013

func_num_args函数功能? 返回传递到函数的参数数目,其语法如下 : int func_num_args (void )。
说明 : 返回传递到目前定义函数的参数数目。如果是从函数定义的外面来呼叫此函数,则func_get_arg( )将会产生警告。
func_num_args( )可以用来结合func_get_arg( )和func_get_args( )来允许使用者定义的函式接受variable-length参数列表。其中,func_get_arg( )从参数列表返回项目,其语法:int func_get_arg (int arg_num),传回定义函数的参数列表的第arg_num个参数,其参数从0开始。且函数定义的外面来呼叫此函数会产生警告;并且当arg_num大于函数实际传递的参数数目时亦会产生警告并返回FALSE。
func_get_args()函数和func_get_arg()函数的区别在于,func_get_args()函数传回一数组,数组的各个元素相当于是目前使用者定义函式的参数列的数目。

在我们构建PHP类的时候,灵活使用这三个函数,可以起到非常理想的效果,例如外面在创建PHP和MYSQL链接的类时,可以书写如下代码:

<?php 
class mydb{
    private $user;
   private $pass;
   private $host;
   private $db;public function __construct(){
   $num_args=func_num_args();
   if($num_args>0){
      $args=func_get_args();
       $this->host=$args[0];
       $this->user=$args[1];
       $this->pass=$args[2];
        this->connect();
    }
} 
…………省略…………
?>

PHP 相关文章推荐
PHP+.htaccess实现全站静态HTML文件GZIP压缩传输(一)
Feb 15 PHP
php中用文本文件做数据库的实现方法
Mar 27 PHP
PHP 字符串编码截取函数(兼容utf-8和gb2312)
May 02 PHP
php中的Base62类(适用于数值转字符串)
Aug 12 PHP
PHP实现克鲁斯卡尔算法实例解析
Aug 22 PHP
php使用文本统计访问量的方法
May 12 PHP
PHP简单操作MongoDB的方法(安装及增删改查)
May 26 PHP
Yii2中关联查询简单用法示例
Aug 10 PHP
Laravel给生产环境添加监听事件(SQL日志监听)
Jun 19 PHP
PHP自定义函数判断是否为Get、Post及Ajax提交的方法
Jul 27 PHP
PHP检查端口是否可以被绑定的方法示例
Aug 09 PHP
PHP实现对数字分隔加千分号的方法
Mar 18 PHP
php常用ODBC函数集(详细)
Jun 24 #PHP
php常用Stream函数集介绍
Jun 24 #PHP
解析php常用image图像函数集
Jun 24 #PHP
解析php中eclipse 用空格替换 tab键
Jun 24 #PHP
基于PHP magic_quotes_gpc的使用方法详解
Jun 24 #PHP
解析php dirname()与__FILE__常量的应用
Jun 24 #PHP
解析mysql中UNIX_TIMESTAMP()函数与php中time()函数的区别
Jun 24 #PHP
You might like
php创建基本身份认证站点的方法详解
2013/06/08 PHP
PHP多进程编程实例详解
2017/07/19 PHP
PHP+jQuery实现双击修改table表格功能示例
2019/02/21 PHP
PHP信号处理机制的操作代码讲解
2019/04/19 PHP
如何在centos8自定义目录安装php7.3
2019/11/28 PHP
ExtJS的FieldSet的column列布局
2009/11/20 Javascript
javascript 静态对象和构造函数的使用和公私问题
2010/03/02 Javascript
jquery遍历之parent()和parents()的区别及parentsUntil()方法详解
2013/12/02 Javascript
学习JavaScript编程语言的8张思维导图分享
2015/03/27 Javascript
Javascript函数式编程语言
2015/10/11 Javascript
两行代码轻松搞定JavaScript日期验证
2016/08/03 Javascript
AngularJs Forms详解及简单示例
2016/09/01 Javascript
Vue 框架之动态绑定 css 样式实例分析
2018/11/14 Javascript
vue 导航菜单刷新状态不消失,显示对应的路由界面操作
2020/08/06 Javascript
[06:53]2018DOTA2国际邀请赛寻真——为复仇而来的Newbee
2018/08/15 DOTA
Python的多态性实例分析
2015/07/07 Python
Python中的字典与成员运算符初步探究
2015/10/13 Python
python出现&quot;IndentationError: unexpected indent&quot;错误解决办法
2017/10/15 Python
python+matplotlib绘制简单的海豚(顶点和节点的操作)
2018/01/02 Python
Python之csv文件从MySQL数据库导入导出的方法
2018/06/21 Python
python构建基础的爬虫教学
2018/12/23 Python
python给微信好友定时推送消息的示例
2019/02/20 Python
django框架使用方法详解
2019/07/18 Python
Python3.8对可迭代解包的改进及用法详解
2019/10/15 Python
python3+opencv生成不规则黑白mask实例
2020/02/19 Python
python获取命令行参数实例方法讲解
2020/11/02 Python
python-图片流传输的思路及示例(url转换二维码)
2020/12/21 Python
美国最大的网络男装服装品牌:Bonobos
2017/05/25 全球购物
Hunkemöller西班牙:欧洲最大的内衣连锁店
2018/08/15 全球购物
ASOS西班牙官网:英国在线时尚和美容零售商
2020/01/10 全球购物
2014学雷锋活动总结
2014/03/09 职场文书
有创意的广告词
2014/03/18 职场文书
家庭困难证明
2014/10/12 职场文书
互联网创业商业模式以及赚钱法则有哪些?
2019/10/12 职场文书
Pytorch 中net.train 和 net.eval的使用说明
2021/05/22 Python
一篇文章弄懂Python关键字、标识符和变量
2021/07/15 Python