Get_class в статическом методе и наследовании (php)

У нас есть код

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 и т.д.

Любой способ получить дочернее имя класса без добавления к нему дочернего класса?

Ответы

Ответ 1

Вам нужно будет использовать get_called_class, который связывается с опозданием. Доступно только с PHP 5.3.