call_user_func函数类似于一种特别的调用函数的方法,使用方法如下

  • 第一种情况:

function set_max($a,$b)
{if($a>$b)echo $a;elseecho $b;
}
call_user_func('set_max', "111","222");//结果为222

此时 第一个参数 set_max 作为call_user_func 的回调函数使用,$a=111,$b=222

  • 第二种情况

class a
{function b($c){echo $c ;}
}
$num = 200 ;
call_user_func(array('a','b'),$num);//结果为200

此时第一个参数为一个数组 那么 回调就是 a类里面的b方法,num作为参数传到b方法里面。省去了实例化a的过程。
说到这里就不得不再看看 call_user_func_array, 其实call_user_func_arraycall_user_func 类似 使用如下:


function set_max($a,$b)
{ if($a>$b) echo $a;else echo $b;
}call_user_func_array('set_max',array(111,222));//结果222

call_user_func 看起来直观一点。 而call_user_func_array 对类里面方法的使用则如下:


class test
{function set_max($a,$b){if($a>$b)echo $a;else echo $b;}
}
call_user_func_array(array('test','set_max'),array(111,222));
//结果同样为222

原文地址:https://segmentfault.com/a/1190000016250746

转载于:https://www.cnblogs.com/lalalagq/p/9971599.html

PHP 中 call_user_func 的使用相关推荐

  1. 【php】php中call_user_func函数的用法

    下面来说说call_user_func.call_user_func_array这两个函数的用法和例子 call_user_func函数是当需要动态调用函数时,才使用的,这个函数有两种用法: 第一种是 ...

  2. PHP call_user_func理解

    call_user_func():调用一个回调函数处理字符串, 可以用匿名函数,可以用有名函数,可以传递类的方法, 用有名函数时,只需传函数的名称 用类的方法时,要传类的名称和方法名 传递的第一个参数 ...

  3. GNU Make 使用手册(于凤昌中译版)

    GNU Make 使用手册(中译版) 翻译:于凤昌 GNU make Version 3.79 April 2000 Richard M. Stallman and Roland McGrath 1 ...

  4. Yii源码阅读笔记 - 日志组件

    2015-03-09 一 By youngsterxyf 使用 Yii框架为开发者提供两个静态方法进行日志记录: Yii::log($message, $level, $category); Yii: ...

  5. php一句话后门学习(含免杀)

    php一句话后门 开发很久的可利用函数 eval和assert php任意代码执行的一句话后门,我们喜欢用的是传统的eval,php5,7通用. <?php @eval($_POST['a']) ...

  6. 面试:第十二章:所有总结

    Java基础 java基本类型哪些,所占字节 byte :1个字节 short :2个字节 char :2个字节 int :4个字节 long :8个字节 float :4个字节 double :8个 ...

  7. linux内核分析(转自某位大哥网上的笔记)

    启动 当PC启动时,Intel系列的CPU首先进入的是实模式,并开始执行位于地址0xFFFF0处的代码,也就是ROM-BIOS起始位置的代码.BIOS先进行一系列的系统自检,然后初始化位于地址0的中断 ...

  8. php的call_user_func函数实现调用类中的方法

    php的call_user_func函数实现调用类中的方法 解决方法: call_user_func(array($classname,'doindex')); 例子:http://www.yayi​ ...

  9. call_user_func用法

    1 //有一些函数,名字未知 2 //名字在运行状态时,才知道 3 4 //例如a(),b(),c()调用哪一个 5 // ->index(),reg()?又调用哪一个 6 7 function ...

最新文章

  1. css3绘制环形_HTML5 + CSS3 gt;gt;gt; 015
  2. java--迭代(一)Iterator和Iterable接口
  3. rsa php前面,PHP使用非对称加密算法(RSA)
  4. 黄金点游戏之客户端(homework-05)
  5. 共轭矩阵与自共轭矩阵
  6. 【转】C#中Invoke的用法
  7. ElasticSearch 并发的处理方式:锁和版本控制_07
  8. PP苹果助手 v2.3.0 官方版
  9. 网站流量日志分析系统笔记(Hadoop大数据技术原理与应用)
  10. 深入浅出的模型压缩:你一定从未见过如此通俗易懂的Slimming操作
  11. js 设置cookie和获取cookie
  12. 关于kindle mobi词典解析
  13. 微信HOOK 1.获取二维码
  14. 技术书是怎么写出来的
  15. 高电平和低电平 到底是啥?
  16. 迅雷9右侧栏关闭广告
  17. 语法分析器(c++)
  18. LTE-5G学习笔记18--5G关键技术(想学更多快进群)
  19. Word中 mytype公式编辑器编辑的公式与文字不对齐,偏上的问题
  20. apollo配置中心之--spring boot如何加载apollo

热门文章

  1. 华为荣耀鸿蒙系统升级名单,华为鸿蒙系统正式版首批升级名单公布:这8款机型用户有福了...
  2. java jre 与jdk的区别_学习java却不知道JRE和JDK的区别?看完这篇文章,让你受益匪浅...
  3. python-day1-03-格式化输出
  4. 基于CUDA的粒子系统的实现
  5. python中的 同步与异步 互斥锁 和 死锁
  6. React中JSX的理解
  7. iframe框架及优缺点
  8. HTML5 表单相关
  9. 今天的你将感谢_您今天感谢系统管理员了吗?
  10. 如何使用digiKam进行照片管理