PhpSimpleDoc is a PHP code documentor ; from a set of files containing PHP code documented using javadoc syntax, it generates a set of HTML pages containing the code documentation.
Download : phpsimpledoc-1.0a2.zip
(248 Ko) or phpsimpledoc-1.0a2.bz2
Examples of API documentation generated by phpSimpleDoc :
PhpSimlpleDoc documents PHP5 object-oriented code (classes, interfaces, exceptions, inheritance hierarchies) and non-object code (functions and constants).
It handles a limited set of functionalities mainly inspired from javadoc
To organize the documentation, the code can be grouped in packages
PhpSimpleDocs comes in different variants (called documentor implementations) :
- The "default" documentor is adapted for code organized like java code.
The definition of a package is : « a directory containing code to document ».
This permits to compute packages and subpackages without the need to have
@subpackage tags in doc comments.
This also gives the possibility to document packages through a file named
package.html, like with javadoc.
- The "zendlike" documentor, to document code documented like the Zend Framework.
Here, the definition of a package is : « the code containing the same
@package tag in their doc comment » (the same definition applies for sub-packages with
So two classes located in two different directories can belong to the same package.
This definition permits to have only 2 levels of packages (packages and subpackages).
This definition of package doesn't permit to have the
package.html files, and
Class naming convention used in Zend Framework (correspondance between class names and directory structure) is not used to form packages.
- The "php" documentor was written to document php internal classes and functions. At this time, is not much interesting, because the Reflection API doesn't provide Doc comments for internal classes and functions. But it still permits to have a precise idea of the internal classes and functions available on a given system (useful when the version of the php manual differs from the version of php installed on a system). It's also convenient to for the class hierarchy, showing class inheritance.
Here, the code is not grouped in packages.
Note : current version of phpSimpleDoc doesn't implement this feature. If you want to try it, download the first draft, which can do the job : phpsimpledoc.zip (166 Ko).
This program is still at a draft stage : parts of the code need to be refactored and optimized, some bugs remain, and it hasn't been decently tested. But it starts to be able to generate useful documentations.