在 PHP 抽象静态方法中实例化子类?
phpserver side programmingprogramming更新于 2025/6/25 18:22:17
为此,请使用 $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

