Funzione forward_static_call
La funzione forward_static_call permette di chiamare un metodo statico di una classe,
utilizzando il late static binding (Legame Statico Tardivo). Il primo parametro
viene passato come callback sotto forma di array [classe, metodo] o stringa con il nome del metodo,
e i parametri successivi sono gli argomenti per il metodo da chiamare.
Sintassi
forward_static_call(callable $callback, mixed ...$args): mixed
Esempio
Chiamare un metodo statico tramite 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;
?>
Risultato dell'esecuzione del codice:
'B'
Esempio
Passare argomenti al metodo chiamato:
<?php
class Calculator {
public static function add($a, $b) {
return $a + $b;
}
}
$res = forward_static_call(['Calculator', 'add'], 5, 3);
echo $res;
?>
Risultato dell'esecuzione del codice:
8
Vedi anche
-
la funzione
call_user_func,
che chiama una funzione callback -
la funzione
forward_static_call_array,
che è analoga a forward_static_call, ma accetta gli argomenti sotto forma di array