phpDox – The PHP Documentation Generator

Documentation

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

Enrichers

Enricher is used to add additional information in your documentations.

phpDox is shipped with 7 enrichers:

Build
Default and always active enricher. Generate data about the documentation generation (platform info, phpDox information)
Git
Display the branch from which the documentation was build, also display git history on classes/interfaces/traits
Checkstyle
On each class/interface/trait and on methods, display the list of violation from phpcs (from the report)
PHPCS
Same as the Checkstyle enricher
PHPMessDetector
On each class/interface/trait and on methods, display the list of violation from phpmd (from the report)
PHPUnit
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)
PHPLoc
On the overview page, display statistics generated from PHPLoc (from the report)

Engines

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

phpDox have 2 engines :

  • HTML
  • XML