PHPでは、関数ポインターは、通常はコールバック関数と呼ばれる関数アドレスを指す変数です。関数ポインターを介して、関数を動的に呼び出たり転送したりして、コードの柔軟性を向上させることができます。
PHPでは、関数ポインターの構文は次のとおりです。
$functionPointer = 'function_name';
関数ポインターを使用して、配列でさまざまな操作を実行できます。たとえば、次の例は、 USORT関数を使用して数値の配列をソートする方法を示しています。
function sortAscending($a, $b) {
return $a - $b;
}
$numbers = [5, 2, 8, 1, 4];
usort($numbers, 'sortAscending');
print_r($numbers); // 出力:[1, 2, 4, 5, 8]
関数ポインターは、他の関数のパラメーターとして渡すこともできます。たとえば、次のコードは、 Array_map関数の引数として匿名関数を使用する方法を示しています。
$strings = ['hello', 'world', 'php'];
$mappedStrings = array_map(function($string) {
return strtoupper($string);
}, $strings);
print_r($mappedStrings); // 出力:[HELLO, WORLD, PHP]