Функција forward_static_call

Функција forward_static_call омогућава позивање статичке методе класе, користећи касно статичко везивање (Late Static Binding). Првим параметром се прослеђује callback-функција у облику низа [класа, метода] или ниске са именом методе, а наредни параметри су аргументи за метод који се позива.

Синтакса

phpforward_static_call(callable $callback, mixed ...$args): mixed

Пример

Позивање статичке методе преко forward_static_call:

php<?php
class A {
  public static function test() {
    return static::class;
  }
}

class B extends A {}

$res = forward_static_call(['B', 'test']);
echo $res;
?>

Резултат извршавања кода:

php'B'

Пример

Прослеђивање аргумената у метод који се позива:

php<?php
class Calculator {
  public static function add($a, $b) {
    return $a + $b;
  }
}

$res = forward_static_call(['Calculator', 'add'], 5, 3);
echo $res;
?>

Резултат извршавања кода:

php8

Погледајте такође

  • функцију call_user_func,
    која позива callback-функцију
  • функцију forward_static_call_array,
    која је аналогна са forward_static_call, али прихвата аргументе у облику низа