| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- EN-Revision: 24249 -->
- <!-- Reviewed: no -->
- <sect1 id="zend.server.reflection">
- <title>Zend_Server_Reflection</title>
- <sect2 id="zend.server.reflection.introduction">
- <title>Introdução</title>
- <para>
- <classname>Zend_Server_Reflection</classname> fornece um mecanismo padrão para executar
- introspecção de função e classe para uso com as classes de servidor. É baseado na
- <acronym>API</acronym> Reflection do <acronym>PHP</acronym> 5, acrescentado com métodos
- para recuperar parâmetros e retornar tipos de valor e descrições, uma lista completa
- dos protótipos de funções e métodos (ex.: todas as possíveis combinações de chamada
- válidas), e as descrições de funções ou métodos.
- </para>
- <para>
- Normalmente, esta funcionalidade só será usada por desenvolvedores de classes de
- servidor para o framework.
- </para>
- </sect2>
- <sect2 id="zend.server.reflection.usage">
- <title>Utilização</title>
- <para>
- O uso básico é simples:
- </para>
- <programlisting language="php"><![CDATA[
- $class = Zend_Server_Reflection::reflectClass('My_Class');
- $function = Zend_Server_Reflection::reflectFunction('my_function');
- // Obter protótipos
- $prototypes = $reflection->getPrototypes();
- // Repetir o laço através de cada protótipo da função
- foreach ($prototypes as $prototype) {
- // Obter o tipo de retorno do protótipo
- echo "Tipo de retorno: ", $prototype->getReturnType(), "\n";
- // Get prototype parameters
- $parameters = $prototype->getParameters();
- echo "Parâmetros: \n";
- foreach ($parameters as $parameter) {
- // Obter tipo do parâmetro
- echo " ", $parameter->getType(), "\n";
- }
- }
- // Obter namespace para uma classe, função ou método.
- // Namespaces podem ser definidos em tempo de instanciação
- // (segundo argumento), ou usando setNamespace()
- $reflection->getNamespace();
- ]]></programlisting>
- <para>
- <methodname>reflectFunction()</methodname> retorna um objeto
- <classname>Zend_Server_Reflection_Function</classname>;
- <methodname>reflectClass()</methodname> retorna um objeto
- <classname>Zend_Server_Reflection_Class</classname>. Consulte a documentação da
- <acronym>API</acronym> para ver quais métodos estão disponíveis para cada um.
- </para>
- </sect2>
- </sect1>
- <!--
- vim:se ts=4 sw=4 et:
- -->
|