在OO PHP中从重写方法中调用重写方法

时间:2010-04-09 10:47:55

标签: php oop doctrine

在symfony模型中工作,我想覆盖一个函数并从覆盖函数中调用重写函数,沿着

行。
class MyClass extends BaseMyClass {

  function setMyProperty($p) {
    parent::setMyProperty($p);
    //do some other stuff
  }

}

这导致分段错误。我不想改变父类 - 它是由symfony生成的,如果重建模型,将来可能会被覆盖。这似乎应该是直截了当的,但我很难找到解决方案。

2 个答案:

答案 0 :(得分:0)

由于您看到了问题,我猜您应该将其标记为已解答,以便将其从未答复的列表中删除。

答案 1 :(得分:-2)

我已经设法在symfony project forum上找到了我自己问题的解决方案。

我无法调用被覆盖的函数,因为它不存在。虽然它足以让我覆盖它。

使用

$this->_set('my_property', $p);

在哪里工作

parent::setMyProperty($p);

导致错误。

请注意

$this->setMyProperty($p);

如果方法没有被覆盖,我的课程就可以正常工作。