我有,我用它来定义一组是在类上使用的字段的属性。有没有办法检查一个属性是否超载?
最终,当类扩展,PHP可以让你重新定义这个属性,但我不希望允许,因为父母可用字段可能超载会丢失。
这是一个例子:
class A {
protected $_fields = array('a', 'b');
}
class B extends A {
protected $_fields = array('c', 'd'); // I'm loosing 'a' and 'b' fields
}
我可以检查在施工时,如果财产已经超载?也许通过使用反射方法?
你尝试在父类用魔术方法__set()防止超载? – Destralak 2012-07-13 08:41:29
是的,你可以* *找出答案在构造函数中使用反射,但构造也可以被覆盖。所以如果你想阻止某人重写它,那么这有点不实际。你不能让人不敢拍自己的脚。我会理解,如果你想这样做*自动合并*两个获得超集... – deceze 2012-07-13 08:44:19
@deceze我怎么能找出使用反射? – 2012-07-13 09:13:18