Computer >> Máy Tính >  >> Lập trình >> PHP

Thể hiện lớp con trong PHP phương thức tĩnh trừu tượng?

Đối với điều này, hãy sử dụng $ anyObjectName =new static () cùng với bản thân.

Ví dụ

Mã PHP như sau

<!DOCTYPE html>
<html>
<body>
<?php
abstract class Base{
   protected static $fullName = '';
   abstract protected function customFunction();
   public static function get_obj($param1 = null, $param2 = null){
      $obj = new static();
      $obj->customFunction();
   }
   public static function getFullName(){
      return static::$fullName;
   }
}
class Child extends Base {
   protected static $fullName = 'John Doe';
   protected function customFunction(){
      echo self::getFullName() . "<br>";
      echo  $this;
   }
}
Child::get_obj();
?>
</body>
</html>

Đầu ra

Điều này sẽ tạo ra kết quả sau

John Doe