在 PHP 抽象静态方法中实例化子类?
phpserver side programmingprogramming
为此,请使用 $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