我想在父类构造函数中获取子类名称。这些类是命名空间的,所以如果我使用 get_class(); 函数,它将检索整个命名空间,我只需要一个孩子的类名。
如果这很重要,父类是一个抽象类。
尝试PHPget_called_class()
中的函数
具有命名空间的完全限定的类名,实际上是“正确的”类。如果你只想要最后一位,你应该只是子串。
$class = substr(get_class($this), strrpos(get_class($this),'\\')+1);
或者,您可以使用反射
$refl = new \ReflectionObject($this);
$class = $refl->getShortName();