加入收藏 | 设为首页 | 会员中心 | 我要投稿 海洋资讯信息网 (https://www.dahaijun.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

为你解 析PHP回调函数

发布时间:2023-02-08 12:43:19 所属栏目:PHP教程 来源:
导读:  PHP 中的回调函数与 C、Java 等语言的回调函数的作用是一模一样的,都是在函数执行的过程中,跳转到回调函数中,当回调函数执行完毕之后,再回到之前的函数处理接下来的程序。
  PHP中回调函数的实现 在 PHP
  PHP 中的回调函数与 C、Java 等语言的回调函数的作用是一模一样的,都是在函数执行的过程中,跳转到回调函数中,当回调函数执行完毕之后,再回到之前的函数处理接下来的程序。
  PHP中回调函数的实现 在 PHP 中调用回调函数,不像 C、Java 等语言那样直接使用函数名作为函数参数,而是使用函数名对应的字符串名称来调用。
 
  示例代码如下所示:
  <?php
 
  function arithmetic($funcName, $m, $n) {
 
  return $funcName($m, $n);
 
  }
 
  function add($m,$n){
 
  return $m+$n;
 
  }
 
  
 
  $sum = arithmetic('add', 5, 9);
 
  echo '5 + 9 ='.$sum;
 
  ?>
 
  运行结果如下:
  5 + 9 =14
 
  另外,PHP 还提供了两个内置函数 call_user_func() 和 call_user_func_array() 来对回调函数进行支持。这两个函数的区别是 call_user_func_array() 是以数组的形式接收回调函数的参数,而 call_user_func() 则是以具体的参数来接收回调函数参数的。 1) call_user_func() call_user_func 函数会把第一个参数作为回调函数来调用,其语法格式如下:
  call_user_func ($callback [, $parameter, ... ])
 
  其中,第一个参数 $callback 是被调用的回调函数,其余参数是回调函数的参数,多个参数之间使用,分隔。 【示例】下面通过一个简单的示例来演示一下 call_user_func 函数的使用。
  <?php
 
  function arithmetic($funcName, $m, $n) {
 
  return call_user_func($funcName, $m, $n);
 
  }
 
  function add($m,$n){
 
  return $m+$n;
 
  }
 
  
 
  $sum = arithmetic('add', 7, 17);
 
  echo '7 + 17 ='.$sum;
 
  ?>
 
  运行结果如下:
  7 + 17 =24
 
  2) call_user_func_array() call_user_func_array 函数可以调用回调函数,并使用一个数组来作为回调函数的参数,其语法格式如下:
  call_user_func_array ($callback ,$param_arr)
 
  其中,第一个参数 $callback 是被调用的回调函数,$param_arr 是一个索引数组,用来存储需要传入回调函数中的具体参数。
 

(编辑:海洋资讯信息网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!