Fonction forward_static_call
La fonction forward_static_call permet d'appeler une méthode statique de classe
en utilisant la liaison statique tardive (Late Static Binding). Le premier paramètre
est une fonction de rappel (callback) sous forme de tableau [classe, méthode] ou d'une chaîne avec le nom de la méthode,
et les paramètres suivants sont les arguments pour la méthode appelée.
Syntaxe
forward_static_call(callable $callback, mixed ...$args): mixed
Exemple
Appel d'une méthode statique via forward_static_call :
<?php
class A {
public static function test() {
return static::class;
}
}
class B extends A {}
$res = forward_static_call(['B', 'test']);
echo $res;
?>
Résultat de l'exécution du code :
'B'
Exemple
Transmission d'arguments à la méthode appelée :
<?php
class Calculator {
public static function add($a, $b) {
return $a + $b;
}
}
$res = forward_static_call(['Calculator', 'add'], 5, 3);
echo $res;
?>
Résultat de l'exécution du code :
8
Voir aussi
-
la fonction
call_user_func,
qui appelle une fonction de rappel -
la fonction
forward_static_call_array,
qui est analogue à forward_static_call, mais accepte les arguments sous forme de tableau