Funkcia forward_static_call
Funkcia forward_static_call umožňuje volať statickú metódu triedy,
pričom využíva neskoré statické viazanie (Late Static Binding). Ako prvý parameter
sa odovzdáva callback funkcia vo forme poľa [trieda, metóda] alebo reťazca s názvom metódy,
a následné parametre sú argumenty pre volanú metódu.
Syntax
forward_static_call(callable $callback, mixed ...$args): mixed
Príklad
Volanie statickej metódy cez 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;
?>
Výsledok vykonania kódu:
'B'
Príklad
Odovzdanie argumentov do volanej metódy:
<?php
class Calculator {
public static function add($a, $b) {
return $a + $b;
}
}
$res = forward_static_call(['Calculator', 'add'], 5, 3);
echo $res;
?>
Výsledok vykonania kódu:
8
Pozrite tiež
-
funkciu
call_user_func,
ktorá volá callback funkciu -
funkciu
forward_static_call_array,
ktorá je analogická k forward_static_call, ale prijíma argumenty vo forme poľa