PHP中是否有一个常量保存当前的子类名称?这样我就可以编写一个函数:
namespace test\that;
class MyClass extends ClassA {
}
abstract class ClassA {
public static function getClassName() {
return __THIS_CLASS__; // like get_class($this); in a none static method
}
}
最后我会做这样的事情:
namespace test\other;
use test\that\MyClass;
var_dump(MyClass::getClassName()); // --> test\that\MyClass
这甚至可能吗?
答案 0 :(得分:2)
你可能正在关注get_called_class()
;它返回调用静态方法的类的名称。
public static function getClassName() {
return get_called_class();
}
MyClass::getClassName(); // "MyClass"
答案 1 :(得分:0)
__CLASS__
怎么样?
看看常数: http://www.php.net/manual/en/language.constants.predefined.php
答案 2 :(得分:0)
您可以使用PHP get_called_class()方法。返回父类和子类名称。