PHP实现动态获取函数参数的方法示例


Posted in PHP onApril 02, 2018

本文实例讲述了PHP实现动态获取函数参数的方法。分享给大家供大家参考,具体如下:

PHP 在用户自定义函数中支持可变数量的参数列表。其实很简单,只需使用 func_num_args()func_get_arg() ,和 func_get_args()  函数即可。

可变参数并不需要特别的语法,参数列表仍按函数定义的方式传递给函数,并按通常的方式使用这些参数。

1. func_num_args — 返回传入函数的参数总个数

int func_num_args ( void )

示例

<?php
function demo ()
{
  $numargs = func_num_args ();
  echo "参数个数为: $numargs \n" ;
}
demo ( 'a' , 'b' , 'c' );

运行结果

参数个数为: 3

2. func_get_args — 返回传入函数的参数列表

array func_get_args  ( void )

示例

<?php
function demo ()
{
  $args = func_get_args();
  echo "传入的参数分别为:";
  var_dump($args);
}
demo ( 'a' , 'b' , 'c' );

运行结果

传入的参数分别为:
array (size=3)
  0 => string 'a' (length=1)
  1 => string 'b' (length=1)
  2 => string 'c' (length=1)

3. func_get_arg — 根据参数索引从参数列表返回参数值

mixed  func_get_arg  ( int $arg_num  )

示例

<?php
function demo ()
{
  $numargs = func_num_args ();
  echo "参数个数为: $numargs <br />" ;
  $args = func_get_args();
  if ( $numargs >= 2 ) {
    echo "第二个参数为: " . func_get_arg ( 1 ) . "<br />" ;
  }
}
demo ( 'a' , 'b' , 'c' );

运行结果

参数个数为: 3
第二个参数为: b

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

PHP 相关文章推荐
php 远程图片保存到本地的函数类
Dec 08 PHP
php-cli简介(不会Shell语言一样用Shell)
Jun 03 PHP
PHP中使用匿名函数操作数据库的例子
Nov 17 PHP
php定时执行任务设置详解
Feb 06 PHP
php获取文件名后缀常用方法小结
Feb 24 PHP
php获取远程文件大小
Oct 20 PHP
Twig模板引擎用法入门教程
Jan 20 PHP
thinkPHP5实现的查询数据库并返回json数据实例
Oct 23 PHP
完美的php分页类
Oct 24 PHP
Docker搭建自己的PHP开发环境
Feb 24 PHP
PHP通过文件保存和更新信息的方法分析
Sep 12 PHP
PHP+MySQL实现在线测试答题实例
Jan 02 PHP
PHP调用其他文件中的类
Apr 02 #PHP
为何说PHP引用是个坑,要慎用
Apr 02 #PHP
PHP实现的一致性Hash算法详解【分布式算法】
Mar 31 #PHP
PHP实现基于PDO扩展连接PostgreSQL对象关系数据库示例
Mar 31 #PHP
ThinkPHP框架中使用Memcached缓存数据的方法
Mar 31 #PHP
PHPTree――php快速生成无限级分类
Mar 30 #PHP
CMSPRESS 10行代码搞定 PHP无限级分类2
Mar 30 #PHP
You might like
十天学会php之第二天
2006/10/09 PHP
linux php mysql数据库备份实现代码
2009/03/10 PHP
php 批量替换html标签的实例代码
2013/11/26 PHP
php 批量添加多行文本框textarea一行一个
2014/06/03 PHP
phpstudy2018升级MySQL5.5为5.7教程(图文)
2018/10/24 PHP
JQuery 常用方法基础教程
2009/02/06 Javascript
js no-repeat写法 背景不重复
2009/03/18 Javascript
改变文件域的样式实现思路同时兼容ie、firefox
2013/10/23 Javascript
ExtJS[Desktop]实现图标换行示例代码
2013/11/17 Javascript
使用js画图之正弦曲线
2015/01/12 Javascript
jquery中object对象循环遍历的方法
2015/12/18 Javascript
Bootstrap弹出带合法性检查的登录框实例代码【推荐】
2016/06/23 Javascript
Vue.js Ajax动态参数与列表显示实现方法
2016/10/20 Javascript
CSS+jQuery实现简单的折叠菜单
2016/12/20 Javascript
Javascript设计模式之装饰者模式详解篇
2017/01/17 Javascript
lhgcalendar时间插件限制只能选择三个月的实现方法
2017/07/03 Javascript
Vue多系统切换实现方案
2018/06/05 Javascript
基于vue2.0实现仿百度前端分页效果附实现代码
2018/10/30 Javascript
[01:20]辉夜杯背景故事宣传片《辉夜传说》
2015/12/25 DOTA
pygame学习笔记(5):游戏精灵
2015/04/15 Python
python制作花瓣网美女图片爬虫
2015/10/28 Python
Python Opencv任意形状目标检测并绘制框图
2019/07/23 Python
解决tensorflow训练时内存持续增加并占满的问题
2020/01/19 Python
python 对任意数据和曲线进行拟合并求出函数表达式的三种解决方案
2020/02/18 Python
python opencv实现直线检测并测出倾斜角度(附源码+注释)
2020/12/31 Python
入党积极分子思想汇报范文
2014/01/05 职场文书
高中军训感想800字
2014/02/23 职场文书
《穷人》教学反思
2014/04/08 职场文书
档案保密承诺书
2014/06/03 职场文书
应聘教师自荐书
2014/06/16 职场文书
初中同学会活动方案
2014/08/22 职场文书
个人融资协议书
2014/10/02 职场文书
师德师风整改措施
2014/10/24 职场文书
焦裕禄观后感
2015/06/03 职场文书
2019餐饮行业创业计划书!
2019/06/27 职场文书
如何使用SQL Server语句创建表
2022/04/12 SQL Server