在PHP中,callable 是一个特殊的类型,用于表示可以被调用的变量,例如函数、方法、类的静态方法、匿名函数等。
可以将 callable 类型用作参数类型、返回类型或变量类型。
以下是一些使用 callable 的示例:
声明带有 callable 参数的函数:
<?php function execute(callable $function) { $function(); // 调用传入的可调用变量 } ?>
将 callable 作为参数类型和返回类型的方法:
<?php class Calculator { public function calculate(callable $operation, $num1, $num2) { return $operation($num1, $num2); // 调用传入的可调用变量 } public function add($a, $b) { return $a + $b; } } $calculator = new Calculator(); $result = $calculator->calculate([$calculator, 'add'], 2, 3); // 使用类的实例方法作为可调用变量
使用匿名函数作为 callable 变量:
<?php $sum = function ($a, $b) { return $a + $b; }; $result = $sum(2, 3); // 直接调用匿名函数
总结:callable 表示一个可以被调用的变量,可以用作参数类型、返回类型或变量类型,用于支持函数、方法、类方法、匿名函数的灵活调用。