Hàm forward_static_call

Hàm forward_static_call cho phép gọi một phương thức tĩnh của lớp, sử dụng liên kết tĩnh muộn (Late Static Binding). Tham số đầu tiên được truyền là hàm callback dưới dạng mảng [lớp, phương thức] hoặc chuỗi với tên phương thức, và các tham số tiếp theo - là các đối số cho phương thức được gọi.

Cú pháp

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

Ví dụ

Gọi phương thức tĩnh thông qua 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;
?>

Kết quả thực thi mã:

php'B'

Ví dụ

Truyền đối số vào phương thức được gọi:

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

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

Kết quả thực thi mã:

php8

Xem thêm