如何让 PHP getter/setter 从他们的领域继承 DocBlock?
How to make PHP getter/setter inherit DocBlock from their field?
如何使 getter/setter 方法自动使用各自字段中的 DocBlock 描述?或者也许有任何其他方法可以解决此问题:请参阅 getters/setters 上的 DocBlocks,而无需手动复制粘贴每一个。
考虑这个例子:
字段 $name
(1) 有一些评论,但是,由于该字段是私有的并且打算与 getter/setter 方法一起使用,因此几乎不会看到它。但是,在这些方法上 IDE 不显示来自字段变量 (2) 的任何注释。
当然,您可以简单地将相同的描述复制粘贴到两种方法中。但是,当对象有十几个或更多属性时,管理起来就变得非常困难,所有属性都带有 getters/setters 并被广泛注释。每次更改时在 3 个位置修复相同的文本需要大量手动工作,并且非常容易出错。
IDE 是 PhpStorm。
我宁愿不用魔法 __get
__set
方法。
我知道的唯一选择是使用 @see
或 @link
。我们也可以内联使用它们。这是它在 Phpstorm 中的样子:
描述中的link是可以点击的。没有鼠标,我们可以使用 tab 键将光标移动到 link(3 x tab 并输入)。
最终视图:
如何使 getter/setter 方法自动使用各自字段中的 DocBlock 描述?或者也许有任何其他方法可以解决此问题:请参阅 getters/setters 上的 DocBlocks,而无需手动复制粘贴每一个。
考虑这个例子:
字段 $name
(1) 有一些评论,但是,由于该字段是私有的并且打算与 getter/setter 方法一起使用,因此几乎不会看到它。但是,在这些方法上 IDE 不显示来自字段变量 (2) 的任何注释。
当然,您可以简单地将相同的描述复制粘贴到两种方法中。但是,当对象有十几个或更多属性时,管理起来就变得非常困难,所有属性都带有 getters/setters 并被广泛注释。每次更改时在 3 个位置修复相同的文本需要大量手动工作,并且非常容易出错。
IDE 是 PhpStorm。
我宁愿不用魔法 __get
__set
方法。
我知道的唯一选择是使用 @see
或 @link
。我们也可以内联使用它们。这是它在 Phpstorm 中的样子:
描述中的link是可以点击的。没有鼠标,我们可以使用 tab 键将光标移动到 link(3 x tab 并输入)。
最终视图: