27

How do I document class constants for phpDoc? I've read the manual but I can't find anything about them.

Mogsdad
  • 44,709
  • 21
  • 151
  • 275
mck89
  • 18,918
  • 16
  • 89
  • 106
  • 4
    using `@var` is the right way to do it, see https://github.com/phpDocumentor/fig-standards/blob/master/proposed/phpdoc.md#722-var – m13r Apr 11 '17 at 05:42
  • Does this answer your question? [What is the correct way to write PHPDocs for constants?](https://stackoverflow.com/questions/6706051/what-is-the-correct-way-to-write-phpdocs-for-constants) – Melebius Aug 30 '22 at 08:41

3 Answers3

31

Constants only need a docblock that contains the description. No specific tag is necessary. The code parser itself identifies constants and displays them as such in the generated documentation (here's an example).

Gajus
  • 69,002
  • 70
  • 275
  • 438
ashnazg
  • 6,558
  • 2
  • 32
  • 39
  • 2
    This seems to work for [phpDocumentor](http://phpdoc.org/), but to tell Netbeans which description to show in auto-completing, one must add the `@const` as described in the other answer. – feeela Mar 06 '13 at 09:31
  • 2
    It is `@var`, since `@const` does not exist: https://docs.phpdoc.org/references/phpdoc/index.html – Wade Mar 26 '19 at 00:32
13

I'm fairly sure that you can use @const, though I can't find any English documentation. There's a German example here. It shows define statements rather than class constants, but IIRC the syntax is the same.


Nine years later, an edit...

It is clear now that the above is bad advice as @const has not appeared in the docs and it seems it will not.

Using @var seems to work, though I cannot see it explicitly specified anywhere.

lonesomeday
  • 233,373
  • 50
  • 316
  • 318
  • 6
    Better review of the `@const` documentation is here: http://stackoverflow.com/a/18446766/367456 - it also explains that no such thing exists. – hakre Aug 12 '14 at 18:12
  • 3
    Should use `@var` as per this answer: http://stackoverflow.com/a/27772200/2053165 – Leith Aug 05 '16 at 04:37
  • 1
    Yet another terrible selected answer... Is it possible to change the selected answer? I don't recall, but you should.. --> Guys, do not use `@const` as it is NOT valid, NOT correct, and NOT in the docs. One day it might not work, kind of like being "deprecated" but still works until they decide to pull the plug.. – Wade Mar 26 '19 at 00:31
  • @Wade or you can edit, as I have done. That's how StackOverflow works. If you can find some authority for the use of `@var` or whatever the best solution is, please do add it to the answer. – lonesomeday Jul 22 '19 at 16:08
1

The full list of all PHPDoc 3 tags: Tag reference

The manual says the following:

@var

You may use the @var tag to document the Type of the following Structural Elements:

  • Constants, both class and global scope
  • Properties
  • Variables, both global and local scope
zxdx
  • 101
  • 1
  • 4