Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> PHP

การสร้าง Instance ของ Child Class ใน Abstract Static Method PHP


สำหรับสิ่งนี้ ให้ใช้ $anyObjectName = new static() พร้อมกับ self

ตัวอย่าง

โค้ด PHP มีดังนี้

<!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>

ผลลัพธ์

จะผลลัพธ์ดังนี้

John Doe