phpDox – The PHP Documentation Generator


Installation and Usage

Please refer to the README.markdown page on github for now.

Supported annotations

Striclty speaking, phpDox doesn't have a list of supported/unsupported annotations. All annotations are parsed by phpDox.

However, only a couple of them are display with the default HTML templates. Here the list of annotations that are visible in the HTML rendering:

  • Global
    • @todo
    • @fixme
    • @author
    • @copyright
    • @license
  • On classes / interfaces / traits
    • No special annotations
  • On properties (members) / constants
    • @var
  • On methods / functions
    • @return
    • @throws
    • @param


Enricher is used to add additional information in your documentations.

phpDox is shipped with 7 enrichers:

Default and always active enricher. Generate data about the documentation generation (platform info, phpDox information)
Display the branch from which the documentation was build, also display git history on classes/interfaces/traits
On each class/interface/trait and on methods, display the list of violation from phpcs (from the report)
Same as the Checkstyle enricher
On each class/interface/trait and on methods, display the list of violation from phpmd (from the report)
On each class it will summarize the methods and lines coverage percentage, on method it will summarize the number of tests and the number of passed tests, and finally on source code it will indicate if a line is cover by unit test and the list of test that execute the code (from the report)
On the overview page, display statistics generated from PHPLoc (from the report)


Engine is used to transform the parsed code into an usable documentation

phpDox have 2 engines :

  • HTML
  • XML