PHP_UML is a PHP parser, an XMI code generator, and a documentation tool.
Practically, with PHP_UML, you will be able to feed a UML CASE tool (like Rational Rose™ or ArgoUml), with a UML representation of an existing PHP application. This way, you get an instant overview of the code, with all the usual functions of your preferred software design tool.

PHP_UML:

  • Can generate UML/XMI files in version 1.4, or in version 2.1 (logical, component, and deployment views)
  • Can generate an API documentation in HTML format
  • Can generate PHP code (code skeleton) from a given XMI file

PHP_UML:

  • Parses PHP code, in all versions (classes, interfaces, functions, properties…)
  • Interprets the PHP namespacing instructions (namespace and use)
  • Parses the docblock comments: class (@package), function (@param, @return), property (@var) and header file comments (@package)
  • Detects the types as much as possible (by parsing the type hints, and by analyzing the default values)

PHP_UML generates a logical view (the packages and the classes found), a deployment view (that maps the filesystem that has been scanned), and a component view (one component per package).

Example of use
PHP_UML is currently used to generate the API documentation of Typo3 : http://flow3.typo3.org/fileadmin/API/FLOW3/