• Artigos
  • Projetos
  • Lista
  • Docs
  • Enviar Artigo
  • ?

Descobrindo os métodos de uma classe por Reflexão

17/01/2009  Pablo DallOglio 

No PHP existem diversas formas de se descobrir informações a respeito de uma classe. No primeiro exemplo a seguir, para saber quais os métodos oferecidos por uma classe, a função get_class_methods() é utilizada:



<?php
class Pessoa
{
    private 
$codigo;
    private 
$name;
    function 
__construct($codigo)
    {
        
$this->codigo = $codigo;
    }

    function 
setName($name)
    {
        
$this->name = $name;
    }
}

print_r(get_class_methods('Pessoa'));
?>



O PHP5 também implementa uma API chamada Reflection. A Reflection API permite fazermos reflexão de objetos, ou seja, investigar sobre seus atributos, métodos e descobrir sua interface. No segundo exemplo a seguir, temos o mesmo código rescrito utilizando essa API:

<?php
class Pessoa
{
    private 
$codigo;
    private 
$name;
    function 
__construct($codigo)
    {
        
$this->codigo = $codigo;
    }

    function 
setName($name)
    {
        
$this->name = $name;
    }
}

$api = new ReflectionClass('Pessoa');
foreach(
$api->getMethods() as $method)
{
    echo 
$method->getName() . "<br>
"
;
}
?>



Comentários

Adicionar Comentário
 login  
 Senha  
 Título  
 Comentário  
  Efetuar Cadastro
  Esqueci a Senha

Livros




    Outros

    Busque conteúdo no site
    Participe de nosso grupo no google

    [Página do grupo]  [Arquivo do grupo]

    Google

    Parceiros

 
Designed by Wolfgang Bartelme Designed by Wolfgang Bartelme

© 2006 Wordpress Themes | Theme (Not so) Fresh
XHTML CSS RSS allposts