我们有一个代码

class ParentClass {
  public static function getName() {
    return get_class(self);
  }
}

class ChildClass extends ParentClass {
}

echo ParentClass::getName(); # => 'ParentClass'
echo ChildClass::getName(); # => 'ParentClass'

如果我使用get_class($ this),则会得到相同的结果。也适用于self::$ this,static::$ this等

有什么方法可以在不向子类添加方法的情况下获取子类名称的呢?

最佳答案

您将不得不使用 get_called_class ,它绑定(bind)得较晚。但仅从PHP 5.3起可用。

关于php - 静态方法和继承中的get_class(php),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4274630/

10-12 06:42