Função forward_static_call
A função forward_static_call permite chamar um método estático de uma classe,
usando vinculação estática tardia (Late Static Binding). O primeiro parâmetro
é uma função callback na forma de um array [classe, método] ou uma string com o nome do método,
e os parâmetros subsequentes são os argumentos para o método chamado.
Sintaxe
forward_static_call(callable $callback, mixed ...$args): mixed
Exemplo
Chamando um método estático 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;
?>
Resultado da execução do código:
'B'
Exemplo
Passando argumentos para o método chamado:
<?php
class Calculator {
public static function add($a, $b) {
return $a + $b;
}
}
$res = forward_static_call(['Calculator', 'add'], 5, 3);
echo $res;
?>
Resultado da execução do código:
8
Veja também
-
a função
call_user_func,
que chama uma função callback -
a função
forward_static_call_array,
que é semelhante à forward_static_call, mas aceita argumentos na forma de um array