Функция forward_static_call
forward_static_call функцияси статик методни кечқуруғ статик боглов (Late Static Binding) орқали чақириш имконини беради. Биринчи параметр сифатида [класс, метод] кўринишидаги callback-функция ёки метод номи билан сатр ўтазилади, қолган параметрлар эса чақирилаётган метод учун аргументлардир.
Синтаксис
forward_static_call(callable $callback, mixed ...$args): mixed
Мисол
Статик методни 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;
?>
Кодни бажариш натижаси:
'B'
Мисол
Чақирилаётган методга аргументлар ўтказиш:
<?php
class Calculator {
public static function add($a, $b) {
return $a + $b;
}
}
$res = forward_static_call(['Calculator', 'add'], 5, 3);
echo $res;
?>
Кодни бажариш натижаси:
8
Шунингдек қаранг
-
call_user_funcфункцияси,
callback-функцияни чақиради -
forward_static_call_arrayфункцияси,
forward_static_callга ўхшаш, лекин аргументларни массив кўринишида қабул қилади