Funkcija forward_static_call
Funkcija forward_static_call leidžia iškviesti klasės statinį metodą,
naudojant vėlyvąjį statinį susiejimą (Late Static Binding). Pirmu parametru
perduodama callback funkcija masyvo [klasė, metodas] pavidalu arba eilutė su metodo pavadinimu,
o tolesni parametrai - argumentai iškviečiamam metodui.
Sintaksė
forward_static_call(callable $callback, mixed ...$args): mixed
Pavyzdys
Statinio metodo iškvietimas per 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;
?>
Kodo vykdymo rezultatas:
'B'
Pavyzdys
Argumentų perdavimas iškviečiamam metodui:
<?php
class Calculator {
public static function add($a, $b) {
return $a + $b;
}
}
$res = forward_static_call(['Calculator', 'add'], 5, 3);
echo $res;
?>
Kodo vykdymo rezultatas:
8
Taip pat žiūrėkite
-
funkciją
call_user_func,
kuri iškviečia callback funkciją -
funkciją
forward_static_call_array,
kuri yra analogiška forward_static_call, bet priima argumentus masyvo pavidalu