PHP callable 关键字
示例
使用 callable 要求回调函数作为参数
<?php
function printFormatted(callable $format, $str) {
echo $format($str);
echo "<br>";
}
function exclaim($str) { return $str . "!"; }
printFormatted("exclaim", "Hello World");
?>
自己尝试一下 »
定义和用法
The callable
关键字用于强制函数参数为函数的引用。
A callable 可以是以下之一
- 匿名函数
- 包含函数名称的字符串
- 描述静态类方法的数组
- 描述对象方法的数组
更多示例
示例
使用不同类型的可调用对象
<?php
function printFormatted(callable $format, $str) {
echo $format($str);
echo "<br>";
}
class MyClass {
public static function ask($str) {
return $str . "?";
}
public function brackets($str) {
return "[$str]";
}
}
// 匿名函数
$func = function($str) { return substr($str, 0, 5); };
printFormatted($func , "Hello World");
// 包含函数名称的字符串
printFormatted("strtoupper", "Hello World");
// 描述静态类方法的数组
printFormatted(["MyClass", "ask"], "Hello World");
// 描述对象方法的数组
$obj = new MyClass();
printFormatted([$obj, "brackets"], "Hello World");
?>
自己尝试一下 »
❮ PHP 关键字