Beispiel 648. Durchführen von Reflection an einer Datei
$r = new Zend_Reflection_File($filename); printf( "===> Die Datei %s\n". " hat %d Zeilen\n", $r->getFileName(), $r->getEndLine() ); $classes = $r->getClasses(); echo " Sie hat " . count($classes) . ":\n"; foreach ($classes as $class) { echo " " . $class->getName() . "\n"; } $functions = $r->getFunctions(); echo " Sie hat " . count($functions) . ":\n"; foreach ($functions as $function) { echo " " . $function->getName() . "\n"; }
Beispiel 649. Durchführen von Reflection an einer Klasse
$r = new Zend_Reflection_Class($class); printf( "Der Klassen-Level Docblock hat die Kurzbeschreibung: %s\n". "Der Klassen-Level Docblock hat die Langbeschreibung:\n%s\n", $r->getDocblock()->getShortDescription(), $r->getDocblock()->getLongDescription(), ); // Die Deklarierte Datei Reflektion $file = $r->getDeclaringFile();
Beispiel 650. Durchführen von Reflection an einer Methode
$r = new Zend_Reflection_Method($class, $name); printf( "Die Methode '%s' hat einen Rückgabetyp von %s", $r->getName(), $r->getReturn() ); foreach ($r->getParameters() as $key => $param) { printf( "Der Parameter an Position '%d' ist vom Typ '%s'\n", $key, $param->getType() ); }
Beispiel 651. Durchführen von Reflection an einem Docblock
$r = new Zend_Reflection_Method($class, $name); $docblock = $r->getDocblock(); printf( "Die Kurzbeschreibung: %s\n". "Die Langbeschreibung:\n%s\n", $r->getDocblock()->getShortDescription(), $r->getDocblock()->getLongDescription(), ); foreach ($docblock->getTags() as $tag) { printf( "Das Hinweis-Tag '%s' hat die Beschreibung '%s'\n", $tag->getName(), $tag->getDescription() ); }