Générateur de doc XML pour classes
Créé la documentation d'une classe au format XML.
XMLClassDoc permet de générer de la documentation XML pour des classes PHP5.
Elle utilise l'API de réflection présentée dans cet article ainsi que l'extension xmlWriter décrite dans cet autre article.
le format de sortie est parametrable et permet soit de générer une doc complète soit un document conforme à la DTD de la documentation des classes utilisé ici même.
Il est possible de choisir l'encodage du fichier de sortie et d'ajouter une ou plusieurs feuilles de style.
Une méthode permet de forcer ou d'empècher l'annalyse des classes parentes et une autre permet de choisir de ne parser
que les membres publics.
Enfin on peux importer la description détaillée de la classe depuis un fichier texte.
Pour que la documentation soit générée correctement, les codes sources des classes doivent être
parfaitement commentés en utilisant les tags bien connus de
phpDocumentor.
Soit :
/**
* @tag xxxx
*/
Ci-dessous la liste des tags reconnus :
- @author
- @category
- @copyright
- @deprecated
- @desc
- @example
- @filesource
- @license
- @link
- @name
- @package
- @param
- @return
- @see
- @since
- @subpackage
- @todo
- @tutorial
- @var
- @version
Lors d'une génération pour une utilisation ici, les tags manquants seront signalés.
Bien que le générateur accepte aussi bien les sources encodés en UTF-8 ou ISO-8859-1 il est préférable pour CSP d'utiliser ISO-8859-1.
Les Méthodes
- void XMLClassDoc::setXML - Initialise le document XML
- void XMLClassDoc::setStyleSheet - Initialise la Feuille de style
- void XMLClassDoc::setlongdescFile - Chargement fichier longdesc
- void XMLClassDoc::setParseParent - setParseParent
- void XMLClassDoc::parseOnlyPublic - parseOnlyPublic
- void XMLClassDoc::toXMLFile - Générateur de fichier
- string XMLClassDoc::toXMLStr - Générateur de Chaine
- void XMLClassDoc::__construct - Constructeur
Exemples
Description des Méthodes
Initialise le document XML
void XMLClassDoc::setXML( [ string version ] [ string encoding ] )
Initialise l'entête XML
- version : XML version (ie '1.0') default : 1.0
- encoding : encodage de sortie (ie 'UTF-8') default : UTF-8
$docXml -> setXML($version, $encoding)
Initialise la Feuille de style
void XMLClassDoc::setStyleSheet( string typestring url )
Initialise les éléments de la Feuille de style
- type : de la CSS (ie 'text/css')
- url : URL de la CSS (ie 'http://classes.scriptsphp.org/style/MyCSS.css')
$docXml -> setStyleSheet($type, $url)
Chargement fichier longdesc
void XMLClassDoc::setlongdescFile( [ string file ] )
Charge le fichier de description
- file : nom du fichier default :
$docXml -> setlongdescFile($file)
setParseParent
void XMLClassDoc::setParseParent( boolean set )
Indique si on doit parcourir les classes parentes
- set : vrai ou faux
$docXml -> setParseParent(true)
parseOnlyPublic
void XMLClassDoc::parseOnlyPublic( boolean set )
Indique si on doit parcourir seulement les membres Public
- set : vrai ou faux
$docXml -> parseOnlyPublic(true)
Générateur de fichier
void XMLClassDoc::toXMLFile( [ string file ] [ string format ] )
Créé le fichier XML de la documentation
- file : nom du fichier complet (par défaut : classeName.xml) default :
- format : format de la sortie (CSP ou ALL) default : CSP
$docXml -> toXMLFile('doc.xml')
Générateur de Chaine
string XMLClassDoc::toXMLStr( [ string format ] )
Créé une chaine XML de la documentation
- format : format de la sortie (CSP ou ALL) default : CSP
$docXml -> toXMLStr('CSP')
Constructeur
void XMLClassDoc::__construct( string class )
Constructeur de la classe
- class : classe à analyser
$docXML = new docGen('myClass')