38

如果我只想从父级继承所有文档,那么 phpDocumentor 中 @inheritDoc 的正确语法是什么?也许不止一种语法是正确的?

  1. @inheritDoc
  2. {@inheritDoc}
  3. @inheritdoc
  4. {@inheritdoc}

我认为文档非常模糊。PhpStorm 似乎支持所有这些,但也许我无法使用某些语法生成文档?

4

2 回答 2

56

子元素应该自动从其父文档块继承几乎所有内容,而无需此标记。否则,您的所有实现方法都必须重新记录,而不会从原始接口的文档中获得任何东西。

简单地说,一个没有文档块的继承元素应该自动继承其父文档块的所有内容。

@inheritdoc标签的唯一目的是帮助您从父文档块导入件事——该父文档的长描述。孩子不应该有这个可用的唯一原因是孩子继续前进并拥有自己的文档块。现在,孩子仍然应该从其父文档块继承几乎所有内容,而不必复制它......除了父母的长描述。 如果子 docblock 出于某种原因选择拥有自己的 docblock,想继承父级的 Long Description,那么您将@inheritdoc在子文档块中确定父长描述出现的位置。因此,孩子可以有自己的短描述和长描述,并且仍然与孩子长描述相关的指定位置包括其父母的长描述。 这是这个标签诞生的唯一原因:-)

关于 IDE 自动补全,我不能说我在 IDE 中看到了关于这个标签的一致行为。此外,我看到一些项目假设这个标签从父文档块继承的信息甚至发生的原因。

于 2014-10-24T18:43:11.193 回答
5

我对 IDE 支持一无所知,但文档将其拼写为{@inheritDoc}.

于 2017-03-25T12:48:22.087 回答