1. call_user_func

function a($b,$c){
echo $b;
echo $c;
}
call_user_func('a', "111","222");
call_user_func('a', "333","444");
 
//显示 111 222 333 444
?>
 
//调用类内部的方法比较奇怪,居然用的是array,不知道开发者是如何考虑的,当然省去了new,也是满有新意的:
class a {
function b($c){
echo $c;
}
}
call_user_func(array("a", "b"),"111");
 
//显示 111
?>

2. call_user_func_array

call_user_func_array函数和call_user_func很相似,只不过是换了一种方式传递了参数,让参数的结构更清晰:

function a($b, $c){
echo $b;
echo $c;
}
call_user_func_array('a', array("111", "222"));
 
//显示 111 222
?>
 
//call_user_func_array函数也可以调用类内部的方法的
 
Class ClassA{
function bc($b, $c) {
$bc = $b + $c;
echo $bc;
}
}
call_user_func_array(array('ClassA','bc'), array("111", "222"));
 
//显示 333
?>

call_user_func函数和call_user_func_array函数都支持引用,这让他们和普通的函数调用更趋于功能一致:

function a(&$b){
$b++;
}
$c = 0;
call_user_func('a', &$c);
echo $c;//显示 1
call_user_func_array('a', array(&$c));
echo $c;//显示 2

最新文章

  1. 26、ASP.NET MVC入门到精通——后台管理区域及分离、Js压缩、css、jquery扩展
  2. php语言的几种循环语句的使用格式,及其区别
  3. opencv的学习笔记3
  4. Eclipse 输入提示设置
  5. JavaScript —— 对象的取值与赋值
  6. JS保留两位小数 [转]
  7. Java并发——Fork/Join框架
  8. 【转】Java ConcurrentModificationException异常原因和解决方法
  9. SetFocus、SetCapture和SetActiveView的区别
  10. scala写算法-从后缀表达式构造
  11. 创建ndarray
  12. [转]Lua和Lua JIT及优化指南
  13. c++简单程序设计 实验一
  14. Webapi创建和使用 以及填坑(二)
  15. Loj #3055. 「HNOI2019」JOJO
  16. 笔记本 原来win10系统改装win7系统遇到 invaid signature detected.check secure boot policy setup问题
  17. Date和 Calendar
  18. 1.如何在Cloud Studio上执行Python代码?
  19. MFC CTreeCtrl控件
  20. 使用pytorch构建神经网络的流程以及一些问题

热门文章

  1. Dubbo 通过Spring 配置具体启动服务
  2. ubuntu搭建分布式hadoop-2.6.0概略和错误
  3. SQL语句在OLAP的妙用(多维分析与指标计算)
  4. Oracle 11g新参数USE_LARGE_PAGES与AMM使用 (转载)
  5. Android——KEYCODE列表
  6. 解决Git报错:The current branch is not configured for pull No value for key branch.master.merge found in configuration
  7. Android 使用NineOldAndroids实现绚丽的ListView左右滑动删除Item效果
  8. 基础字符串处理_C++
  9. im4java开发向导
  10. Ubuntu14.04 caffe 配置