2
我发现自己在这种情况下,我只是肮脏的黑客入侵。但我想知道,有没有一些干净的方法?调用祖父母方法没有调用父母和没有修改父母/祖父母
class base{
var $value;
public function getValue(){
return 'returned from base: '. $value;
}
}
class object extends base{
public function getValue(){
$this->value = 'wrong value';
return parent::getValue();
}
}
class overwrite extends object{
public function getValue(){
$this->value = 'right value';
?????
}
}
$o = new overwrite;
echo $o->getValue();
所有我被允许编辑的是overwrite
。如果我拨打parent::getValue()
,该值将被错误的值覆盖。如果我命名该类,如base::getValue()
,基类不会有$value
属性集。