【问题标题】:PHP Intelephense - Method is not compatible with child methodPHP Intelephense - 方法与子方法不兼容
【发布时间】:2020-11-07 23:13:03
【问题描述】:

考虑以下两个类:

class A {
   ...

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

class B extends A {
   ...

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

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

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

【问题讨论】:

标签: php intelephense


【解决方案1】:

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

【讨论】:

  • 这并没有提供问题的答案。要批评或要求作者澄清,请在他们的帖子下方留下评论。 - From Review
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-08
  • 1970-01-01
  • 2016-06-11
相关资源
最近更新 更多