1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96
|
<?xml version="1.0" encoding="UTF-8"?>
<!-- EN-Revision: 15617 -->
<!-- Reviewed: no -->
<sect1 id="zend.reflection.examples">
<title>Zend_Reflection Beispiele</title>
<example id="zend.reflection.examples.file">
<title>Durchführen von Reflection an einer Datei</title>
<programlisting language="php"><![CDATA[
$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";
}
]]></programlisting>
</example>
<example id="zend.reflection.examples.class">
<title>Durchführen von Reflection an einer Klasse</title>
<programlisting language="php"><![CDATA[
$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();
]]></programlisting>
</example>
<example id="zend.reflection.examples.method">
<title>Durchführen von Reflection an einer Methode</title>
<programlisting language="php"><![CDATA[
$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()
);
}
]]></programlisting>
</example>
<example id="zend.reflection.examples.docblock">
<title>Durchführen von Reflection an einem Docblock</title>
<programlisting language="php"><![CDATA[
$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()
);
}
]]></programlisting>
</example>
</sect1>
|