手册

目录

回调函数

收藏777

阅读7927

更新时间2025-08-06

回调函数

回调函数(通常简称为“回调”)是一个作为参数传递给另一个函数的函数。

任何已存在的函数都可以用作回调函数。要将一个函数用作回调函数,请将包含函数名的字符串作为另一个函数的参数传递:

实例

将回调函数传递给 PHP 的 array_map() 函数,以计算数组中每个字符串的长度:

<?php
function my_callback($item) {
  return strlen($item);
}

$strings = ["apple", "orange", "banana", "coconut"];
$lengths = array_map("my_callback", $strings);
print_r($lengths);
?>
运行实例 »

点击 "运行实例" 按钮查看在线实例

从 PHP 7 版本开始,可以将匿名函数作为回调函数传递:

实例

将匿名函数用作 PHP 的 array_map() 函数的回调函数:

<?php
$strings = ["apple", "orange", "banana", "coconut"];
$lengths = array_map( function($item) { return strlen($item); } , $strings);
print_r($lengths);
?>
运行实例 »

点击 "运行实例" 按钮查看在线实例

用户定义函数中的回调函数

用户定义的函数和方法也可以接受回调函数作为参数。要在用户定义的函数或方法内部使用回调函数,请通过在变量后添加括号并像正常函数一样传递参数来调用它:

实例

从用户定义的函数中运行回调函数:

<?php
function exclaim($str) {
  return $str . "! ";
}

function ask($str) {
  return $str . "? ";
}

function printFormatted($str, $format) {
  // 调用 $format 回调函数
  echo $format($str);
}

// 将 "exclaim" 和 "ask" 作为回调函数传递给 printFormatted()
printFormatted("Hello world", "exclaim");
printFormatted("Hello world", "ask");
?>
运行实例 »

点击 "运行实例" 按钮查看在线实例

科技资讯

更多

精选课程

更多
前端入门_HTML5
前端入门_HTML5

共29课时

62万人学习

CSS视频教程-玉女心经版
CSS视频教程-玉女心经版

共25课时

39.5万人学习

JavaScript极速入门_玉女心经系列
JavaScript极速入门_玉女心经系列

共43课时

71.3万人学习

独孤九贱(1)_HTML5视频教程
独孤九贱(1)_HTML5视频教程

共25课时

61.9万人学习

独孤九贱(2)_CSS视频教程
独孤九贱(2)_CSS视频教程

共22课时

23.1万人学习

独孤九贱(3)_JavaScript视频教程
独孤九贱(3)_JavaScript视频教程

共28课时

34.1万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时

125.8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号