如何从此类方法中没有实现的扩展类调用类名(我希望从父类扩展此函数)并且不调用新类。如果我这样称呼类名:
abstract class foo {
public static function get_name(){
return get_class();
//or
return __CLASS__;
}
}
class bar extends foo {}
echo bar::get_name();
我得到:
foo
期望:
bar
答案 0 :(得分:2)
您可以使用get_called_class
执行此操作,但不清楚为什么要将其设为方法。
答案 1 :(得分:1)
对于静态方法,您只需使用get_called_class()
代替get_class()
。
abstract class foo {
public static function get_name(){
return get_called_class();
}
}
class bar extends foo {}
echo bar::get_name();