在PHP中,回調函數是一個作為參數傳遞給另一個函數的函數。這使得在完成特定任務時,可以靈活地定義要執行的操作。以下是如何在PHP中使用回調函數的示例:
<?php
function myFunction($value, callable $callback) {
return $callback($value);
}
$double = function($number) {
return $number * 2;
};
$result = myFunction(5, $double);
echo $result; // 輸出 10
?>
<?php
function myFunction($value, array $callback) {
return $callback[$value];
}
$multiplyByThree = [
2 => function($number) {
return $number * 3;
},
3 => function($number) {
return $number * 4;
}
];
$result1 = myFunction(2, $multiplyByThree);
echo $result1; // 輸出 6
$result2 = myFunction(3, $multiplyByThree);
echo $result2; // 輸出 12
?>
<?php
function double($number) {
return $number * 2;
}
function triple($number) {
return $number * 3;
}
function myFunction($value, $callback) {
return $callback($value);
}
$result = myFunction(5, 'double');
echo $result; // 輸出 10
$result = myFunction(5, 'triple');
echo $result; // 輸出 15
?>
<?php
class Multiplier {
private $factor;
public function __construct($factor) {
$this->factor = $factor;
}
public function multiplyByFactor($number) {
return $number * $this->factor;
}
}
$multiplier = new Multiplier(3);
$result = myFunction(5, array($multiplier, 'multiplyByFactor'));
echo $result; // 輸出 15
?>
這些示例展示了如何在不同場景下使用回調函數。回調函數提供了很大的靈活性,使得代碼更加模塊化。