Funktionen forward_static_call
Funktionen forward_static_call giver mulighed for at kalde en statisk metode i en klasse,
ved hjælp af sen statisk binding (Late Static Binding). Den første parameter
er en callback-funktion i form af et array [klasse, metode] eller en streng med metodens navn,
og de efterfølgende parametre er argumenter til den påkaldte metode.
Syntaks
forward_static_call(callable $callback, mixed ...$args): mixed
Eksempel
Kald af statisk metode 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;
?>
Resultat af kodeudførelse:
'B'
Eksempel
Overførsel af argumenter til den påkaldte metode:
<?php
class Calculator {
public static function add($a, $b) {
return $a + $b;
}
}
$res = forward_static_call(['Calculator', 'add'], 5, 3);
echo $res;
?>
Resultat af kodeudførelse:
8
Se også
-
funktionen
call_user_func,
som kalder en callback-funktion -
funktionen
forward_static_call_array,
som er analog med forward_static_call, men accepterer argumenter i form af et array