PHP回调函数简单用法示例

 更新时间:2019年05月08日 14:06:23   作者:Yxh_blogs  
这篇文章主要介绍了PHP回调函数简单用法,结合实例形式分析了call_user_func()与call_user_func_array()函数区别、功能及简单使用技巧,需要的朋友可以参考下

本文实例讲述了PHP回调函数简单用法。分享给大家供大家参考,具体如下:

php中提供了两个内置的回调函数call_user_func()call_user_func_array()

这两个函数的区别是:

call_user_func_array(callable $callback,array $param_arr)是以数组的形式接受回调函数和参数的。

call_user_func($callback, 参数1, 参数2)参数的个数是根据回调函数来决定的。

下面是一些常见的回调函数使用的例子:

//普通函数
function f1($param1,$param2)
{
 echo '函数'.__FUNCTION__.'被执行,传入的参数是:'.$param1.' '.$param2;
 echo "<br/>";
}
//通过call_user_func调用函数f1
call_user_func('f1','han','wen');
//通过call_user_func_array调用函数
call_user_func_array('f1',array('han','wen'));

运行结果:

函数f1被执行,传入的参数是:han wen
函数f1被执行,传入的参数是:han wen

class A{
 public $name;
 function show($param)
 {
  echo '传入参数是:'.$param."<br/>";
  echo 'my name is:'.$this->name;
  echo "<br/>";
 }
 function show1($param1,$param2)
 {
  echo __METHOD__.'方法被执行,传入参数是:'.$param1.' '.$param2."<br/>";
 }
 public static function show2($param1,$param2)
 {
  echo __METHOD__.'方法被执行,传入参数是:'.$param1.' '.$param2."<br/>";
 }
}
//调用类中非静态成员函数,该成员函数中有$this调用了对象中的成员
$a = new A;
$a->name = 'wen';
call_user_func_array(array($a,'show',),array('han!'));
//调用类中非静态成员函数,没有对象被创建,该成员函数中不能有$this
call_user_func_array(array('A','show1',),array('han!','wen'));
//调用类中静态成员函数
call_user_func_array(array('A','show2'),array('param1','param2'));

运行结果:

传入参数是:han!
my name is:wen
A::show1方法被执行,传入参数是:han! wen
A::show2方法被执行,传入参数是:param1 param2

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php常用函数与技巧总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP数据结构与算法教程》及《php程序设计算法总结

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

相关文章

  • 如何使用php判断服务器是否是HTTPS连接

    如何使用php判断服务器是否是HTTPS连接

    需要判断代码运行环境是否是HTTPS服务器?下面的代码可以帮助你实现,非常简单
    2013-07-07
  • 本地计算机无法启动Apache故障处理

    本地计算机无法启动Apache故障处理

    安装了WMAP后,一直无法运行成功。后发现Apache一直都不在运行状态。到WMAP中的Apache选项中去选择启动但无法启动。下面总结下处理此问题的几种思路方法
    2014-08-08
  • php程序效率优化的一些策略小结

    php程序效率优化的一些策略小结

    大家在开发过程中,经常会考虑到一些php的代码的执行效率问题,这样我们的程序才会运行的更加流畅,这里简单的总结小,需要的朋友可以参考下。
    2010-07-07
  • php实现的rc4加密解密类定义与用法示例

    php实现的rc4加密解密类定义与用法示例

    这篇文章主要介绍了php实现的rc4加密解密类定义与用法,结合完整实例形式给出了php rc4加密解密类文件class.rc4crypt.php的定义及相关使用技巧,需要的朋友可以参考下
    2018-08-08
  • PHP常用的文件操作函数总结

    PHP常用的文件操作函数总结

    这篇文章主要给大家总结了一些PHP中文件操作的常见函数,文中通过实例代码介绍的非常详细,对我们学习PHP有一定帮助,需要的朋友可以参考下
    2022-08-08
  • [PHP]实用函数7

    [PHP]实用函数7

    [PHP]实用函数7...
    2007-11-11
  • PHP基于openssl实现的非对称加密操作示例

    PHP基于openssl实现的非对称加密操作示例

    这篇文章主要介绍了PHP基于openssl实现的非对称加密操作,结合实例形式分析了openssl安装、密钥生成及php基于openssl的非对称加密算法相关操作技巧,需要的朋友可以参考下
    2019-01-01
  • php与paypal整合方法

    php与paypal整合方法

    这几天,boss要求在system中整合paypal,方便交易.个个都没空,就我比较清闲.所以,这工作就落我身上了.一点头绪都没有.只能先google一下了.查找了大半个上午,中午懂了那么一点.还好paypal提供了比较完整的参考文档.
    2010-11-11
  • PHP实现通过URL提取根域名

    PHP实现通过URL提取根域名

    本文给大家分享的是个人在做项目的时候遇到的,需要通过php实现从URL中提取根域名的代码以及实现思路,有需要的小伙伴可以参考下
    2016-03-03
  • PHP laravel实现配置使用多数据库

    PHP laravel实现配置使用多数据库

    有的时候,我们在开发的过程中需要连接多个数据库。Laravel框架中早已为我们想到了这样的需求。这篇文章主要为大家介绍了laravel配置使用多数据库的方法,需要的可以参考一下
    2022-10-10

最新评论