Zend_Reflection Beispiele
Example #1 Durchführen von Reflection an einer Datei
$r = new Zend_Reflection_File($filename);
"===> Die Datei %s\n".
" hat %d Zeilen\n",
$r->getFileName(),
$r->getEndLine()
);
$classes = $r->getClasses();
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";
}
Example #2 Durchführen von Reflection an einer Klasse
$r = new Zend_Reflection_Class($class);
"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();
Example #3 Durchführen von Reflection an einer Methode
$r = new Zend_Reflection_Method($class, $name);
"Die Methode '%s' hat einen Rückgabetyp von %s",
$r->getName(),
$r->getReturn()
);
foreach ($r->getParameters() as $key => $param) {
"Der Parameter an Position '%d' ist vom Typ '%s'\n",
$key,
$param->getType()
);
}
Example #4 Durchführen von Reflection an einem Docblock
$r = new Zend_Reflection_Method($class, $name);
$docblock = $r->getDocblock();
"Die Kurzbeschreibung: %s\n".
"Die Langbeschreibung:\n%s\n",
$r->getDocblock()->getShortDescription(),
$r->getDocblock()->getLongDescription(),
);
foreach ($docblock->getTags() as $tag) {
"Das Hinweis-Tag '%s' hat die Beschreibung '%s'\n",
$tag->getName(),
$tag->getDescription()
);
}
|
|