手册
目录
回调函数(通常简称为“回调”)是一个作为参数传递给另一个函数的函数。
任何已存在的函数都可以用作回调函数。要将一个函数用作回调函数,请将包含函数名的字符串作为另一个函数的参数传递:
将回调函数传递给 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");
?>
运行实例 »点击 "运行实例" 按钮查看在线实例
相关
视频
RELATED VIDEOS
科技资讯
1
2
3
4
5
6
7
8
9
精选课程
共5课时
17.3万人学习
共49课时
77.4万人学习
共29课时
62万人学习
共25课时
39.5万人学习
共43课时
71.3万人学习
共25课时
61.9万人学习
共22课时
23.1万人学习
共28课时
34.1万人学习
共89课时
125.8万人学习