【发布时间】:2009-02-03 23:27:49
【问题描述】:
我正在尝试通过父类访问子类中的成员变量,而无需实例化。
这是我的尝试之一,但B::getStatic() 以Access to undeclared static property 失败。
是否有另一种解决方案,可能没有静态?
class A {
static public function getStatic() {
return self::$myStatic;
}
}
class B extends A {
public static $myStatic = 5;
}
class C extends A {
public static $myStatic = 6;
}
var_dump(B::$myStatic);
var_dump(B::getStatic());
var_dump(C::$myStatic);
var_dump(C::getStatic());
【问题讨论】:
-
您是否尝试将 A 的 mystatic 设置为某个值以查看会发生什么?
-
是的。它很好地引用了 A 中的静态,而不是 B。我明白为什么这是一个问题,因为 A 可能无法看到 B 的静态。我在问是否有其他方法可以做到这一点?
-
哈哈大家都被否决了!