get_class в статическом методе и наследовании (php) - PullRequest
15 голосов
/ 25 ноября 2010

У нас есть код

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 Ответ

26 голосов
/ 25 ноября 2010

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...