1. call_user_func()


调用普通函数 :

<?phpfunction test($name)
{echo "hello,{$name}";
}call_user_func('test','test');

调用类方法:

使用命名空间:namespace Foobar;class Foo
{public static function test(){print "Hello,World";}
}echo __NAMESPACE__.'\Foo::test';die;call_user_func(__NAMESPACE__.'\Foo::test');
<?phpclass myclass
{public static function hello($name){echo "hello,{$name}";}
}call_user_func(array('myclass','hello'),'www');class myclass1
{public static function hello1($name,$age){echo "hello,{$name},{$age}";}
}call_user_func(array('myclass1','hello1'),'wjh',100);数组里面放类名跟方法,外面放参数。

2.call_user_func_array()

<?phpfunction test($name, $age)
{echo "hello,{$name},{$age}";
}
call_user_func_array('test',array('www',100));class foo
{public static function bar($arg1, $arg2){echo "{$arg1},{$arg2}";}
}
call_user_func_array(array('foo','bar'),array('aaa','bbb'));
call_user_func() 与 call_user_func_array() ,区别,后者参数可以用 数组形式。

利用函数func_get_args()和call_user_func_array() 进行overload

<?phpfunction otest1 ($a)
{echo( '一个参数' );
}
function otest2 ( $a, $b)
{echo( '二个参数' );
}
function otest3 ( $a ,$b,$c)
{echo( '三个啦' );
}
function otest ()
{$args = func_get_args();$num = func_num_args();call_user_func_array( 'otest'.$num, $args );
}
otest(1,2,3);

3. func_get_arg(), func_get_args(), func_num_args()





<?phpfunction test($a, $b, $c)
{$a = func_get_args(); // 获取所有参数var_dump($a);$b = func_num_args(); // 获取参数数量var_dump($b);echo func_get_arg(0),'<br/>';  // 获取某个参数echo func_get_arg(1),'<br/>'; echo func_get_arg(2),'<br/>';
}test('a','b','c');

132.Function Handing 函数相关推荐

  1. 数据库系列之mysql 自定义函数function,函数和存储过程的区别

    mysql 自定义函数function,函数和存储过程的区别 https://blog.csdn.net/u010365819/article/details/80470448 https://blo ...

  2. Function(函数)

    函数 将一系列代码或者操作行为打包到一起形成的就是函数,一块有特定功能的代码. 存放运行逻辑的代码块,以便重复使用 函数声明和函数表达式却别 函数声明 是function开头 作为关键字,声明函数,并 ...

  3. js function定义函数的4种方法

    js function定义函数的4种方法 1.最基本的作为一个本本分分的函数声明使用. 复制代码代码如下: 复制代码代码如下: function func(){}  或  var func=funct ...

  4. OpenCL Function Qualifiers (函数限定符)

    OpenCL Function Qualifiers (函数限定符) OpenCL 3.0 Reference Pages -> OpenCL Compiler -> Function Q ...

  5. [OHIF-Viewers]医疗数字阅片-医学影像-中间插播一下-es6-使用const加箭头函数声明函数相对于function声明函数有什么好处?...

    [OHIF-Viewers]医疗数字阅片-医学影像-中间插播一下-es6-使用const加箭头函数声明函数相对于function声明函数有什么好处? 这个好多人都已经写过了,这里插播一下,在OHIF- ...

  6. Function与函数

    Function与函数 函数是这样的一段JavaScript代码,它只定义一次,但可能被执行或调用多次. Function类型是JavaScript提供的引用类型之一,通过Function类型创建Fu ...

  7. 函数-function(函数的一般形式、命名、定义调用声明、函数的传递方式)

    什么是函数? 函数是用于完成特定任务的程序代码的"黑盒子". 为什么使用函数? 函数的使用可以省去重复代码的编写(可移植性) 即使某种功能在程序中只是用一次,将其以函数的形式也是有 ...

  8. 登录页面添加回车和单击登录事件 jQuery.ajax中的 beforeSend:function () 回调函数【日常记录】

    比较有意思的地方1: 实现如下功能可以两种方法 用jQuery.ajax中的 beforeSend:function () 回调函数:如下(下方有全部代码案例) beforeSend:function ...

  9. SQL Server Window Function 窗体函数读书笔记二 - A Detailed Look at Window Functions

    这一章主要是介绍 窗体中的 Aggregate 函数, Rank 函数, Distribution 函数以及 Offset 函数. Window Aggregate 函数 Window Aggrega ...

  10. Python编程核心内容 ---- Function(函数)

    什么"大事"呢?下面将要介绍Python编程的核心内容之一--函数. 对于Python编程,函数的重要性不言而喻.重要的事情讲三遍:函数实在是太重要,太关键了. 引入函数 之前,我 ...

最新文章

  1. Makefile选项CFLAGS LDFLAGS LIBS
  2. php 如何做ftp传输,php如何实现ftp上传
  3. java基本数据类型转换
  4. 手把手配置Linux透明防火墙
  5. python 常用包_Python常用指引
  6. json为全局变量 vue_vue 设置全局变量、指定请求的 baseurl
  7. 公共wifi做家用_如何在公共网络上获得免费的wifi
  8. 找单词(母函数问题)
  9. 英语本科 国外跨计算机,跨专业考研需具备哪些条件,如英语,计算机的过级情况...
  10. Android常用工具类 (转)
  11. Centos 7.2下安装php7
  12. nacos启动报错 db.num is null【已解决】
  13. live2d手机制作软件_Live2d( 动画制作软件 )中文版分享
  14. Chrome插件 - 突破百度网盘下载限制(大文件直接下载、使用迅雷下载)
  15. ERP学习 之 财务管理
  16. libfetion的使用
  17. Java ques: Unknown initial character set index ‘255‘ received from server. Initial client character
  18. 如何给电脑安装双系统,电脑安装双系统教程
  19. Nvidia Tesla P100 性能评测
  20. vue-video-player 拖动进度条触发暂停移动端展示倍速菜单

热门文章

  1. JQuery源码分析 --- 运动animate 基本原理
  2. 安装scrapy报错问题解决
  3. 搭建本地LNMP开发环境(6)-配置nginx和PHP
  4. Android:ViewPager
  5. Linux计划任务入门详解
  6. SAP 是不是很烂的一个ERP软件
  7. 近期团队博客的摘要 5
  8. 计算机网络领悟摩尔定,计算机网络等133信息技术展望P15-P17.PPT
  9. Altium Designer四层板起步
  10. Java入门——(5)Java API