Funksjonen forward_static_call

Funksjonen forward_static_call lar deg kalle en statisk metode i en klasse, ved å bruke sen statisk binding (Late Static Binding). Den første parameteren sendes som en callback-funksjon i form av en array [klasse, metode] eller en streng med metodens navn, og de påfølgende parameterne er argumentene for metoden som kalles.

Syntaks

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

Eksempel

Kall av statisk metode via 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;
?>

Resultat av kjøring av kode:

php'B'

Eksempel

Overføring av argumenter til metoden som kalles:

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

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

Resultat av kjøring av kode:

php8

Se også