1

考虑以下两个类:

class A {
   ...

   testMethod($param = null) {
       ...
   }
}

class B extends A {
   ...

   testMethod($additionalParam, $param = null) {
      ... do something with $additionalParam ...
      parent::testMethod($param);
   }
}

intelephense向我提出了一个错误,这两种方法不兼容(它们确实不兼容)。尽管如此,我的脚本虽然运行良好。

有人可以向我解释一下,为什么会intelephense被这种设计困扰?这种设计不会被认为是有效的吗?如果没有,如果我想通过存储我没有存储在基类中的附加信息来扩展子类中的方法,我应该如何进行?

4

1 回答 1

0

无法使用 diff 参数覆盖相同的方法,因此请尝试将名称更改testMethodtestMethodMain或您的类中的另一个名称B

于 2021-04-23T18:25:10.303 回答