Zend_Server_Reflection.xml 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <sect1 id="zend.server.reflection">
  2. <title>Zend_Server_Reflection</title>
  3. <sect2 id="zend.server.reflection.introduction">
  4. <title>Úvod</title>
  5. <para>
  6. Zend_Server_Reflection poskytuje štandardný mechanizmus pre zisťovanie
  7. informácií o funkciách a triedach pre použitie spolu so serverom. Je
  8. postavený na PHP 5 Reflection API a rozširuje ho pre poskytnutie metód na
  9. získanie parametrov, návratových hodnôt, plného zoznamu prototypov
  10. funkcií a metód (t.j. všetky možné a validné spôsoby volania) a popis
  11. funkcií a metód.
  12. </para>
  13. <para>
  14. Typicky využije túto funkčnosť iba programátor serverových tried pre
  15. framework.
  16. </para>
  17. </sect2>
  18. <sect2 id="zend.server.reflection.usage">
  19. <title>Použitie</title>
  20. <para>
  21. Základné použitie je jednoduché:
  22. </para>
  23. <programlisting role="php"><![CDATA[<?php
  24. require_once 'Zend/Server/Reflection.php';
  25. $class = Zend_Server_Reflection::reflectClass('My_Class');
  26. $function = Zend_Server_Reflection::reflectFunction('my_function');
  27. // Získanie prototypov
  28. $prototypes = $reflection->getPrototypes();
  29. // Cyklus cez všetky prototypy
  30. foreach ($prototypes as $prototype) {
  31. // Získanie návratovej hodnoty
  32. echo "Return type: ", $prototype->getReturnType(), "\n";
  33. // Získanie parametrov
  34. $parameters = $prototype->getParameters();
  35. echo "Parameters: \n";
  36. foreach ($parameters as $parameter) {
  37. // Získanie typuparametra
  38. echo " ", $parameter->getType(), "\n";
  39. }
  40. }
  41. // Získanie menného priestoru triedy, funkcie, alebo metódy
  42. // Menný priestor môže byť nastavený pri inicializácii (druhy argument) alebo
  43. // pomocou setNamespace()
  44. $reflection->getNamespace();
  45. ]]></programlisting>
  46. <para>
  47. <code>reflectFunction()</code> vráti objekt <code>Zend_Server_Reflection_Function</code>;
  48. <code>reflectClass</code> vráti objekt <code>Zend_Server_Reflection_Class</code>.
  49. Pre viac informácií o dostupných metódach si pozrite API dokumentáciu.
  50. </para>
  51. </sect2>
  52. </sect1>
  53. <!--
  54. vim:se ts=4 sw=4 et:
  55. -->