为常量编写PHPDocs的正确方法是什么?

我有这个代码:

/** * Days to parse * @var int */ const DAYS_TO_PARSE = 10; ... 

我不认为使用@var是一个常量是正确的,我没有看到任何@constant PHPDoc标记。 什么是正确的方法来做到这一点?

为了让他们进入phpDoc,使用:

 @const THING 

通常构造:

 @const[ant] label [description] 

@const 不是正确的答案。

  • 这不是传统的phpDocumentor文档的一部分: http : //manual.phpdoc.org/HTMLframesConverter/default/
  • 这不是当前phpDocumentor文档的一部分: http ://www.phpdoc.org/docs/latest/index.html
  • 它没有列在维基百科的标签列表中: http : //en.wikipedia.org/wiki/PHPDoc#Tags
  • 它没有列在PHP-FIG草案PSR中: https : //github.com/phpDocumentor/fig-standards/blob/master/proposed/phpdoc.md#7-tags

它列出的唯一的“官方”地方是phpdoc.de,但规范只有1.0beta,该网站还包括标签,如@brother@sister ,这是我以前从未见过的,所以整体对该网站的信任有所减弱;事实上的标准一直是phpDoc.org。

简而言之,即使一些非官方的标准没有提到它,如果文档生成器不支持它,那么它是不值得使用的。

@var是正确的 现在,一旦PSR(上面列表中的最后一个链接)超出了草稿的范围,并且是phpDocumentor,Doxygen,APIGen和其他人都理解PHPDoc的基础,那么@type就是正确的,它是@var的inheritance者

PHP-FIGbuild议使用@var作为常量。

7.22。 @var

您可以使用@var标签来logging以下“结构元素”的“types”:

  • 常量,类和全局范围
  • 属性
  • variables,全球和本地范围

句法

@var ["Type"] [element_name] [<description>]

以下命题尊重官方文档语法 :

 class Foo { const /** * @var string Should contain a description */ MY_CONST1 = "1", /** * @var string Should contain a description */ MY_CONST2 = "2"; } 

我使用Netbeans。 当使用这种格式时,它将parsingphpDoc的全局和类常量:

 /** @const Global constant description */ define('MY_CONST', 10); class MyClass { /** @const Class constant description */ const MY_CONST = 10; }