Class/Object Functions Classes/Objects
&reftitle.intro; Estas funções te permitem obter informações sobre classes e instâncias de objetos. Você pode obter o nome da classe que um objeto pertence, bem como suas propriedades e métodos. Usando estas funções, você pode descobrir não apenas a classe de um objeto, mas também seu parentesco (i.e. Qual classe o objeto se extende).
&reftitle.examples; Neste exemplo, nós primeiramente definiremos uma classe base e uma extensão da classe. A classe base descreve um vegetal comum, que é comestível ou não e que tem sua cor. A sub-classeEspinafre adiciona um método para cozinha-lo e outro para descobrir se ele está cozido. classes.inc edible = $edible; $this->color = $color; } function is_edible() { return $this->edible; } function what_color() { return $this->color; } } // end of class Vegetable // extends the base class class Spinach extends Vegetable { var $cooked = false; function Spinach() { $this->Vegetable( true, "green" ); } function cook_it() { $this->cooked = true; } function is_cooked() { return $this->cooked; } } // end of class Spinach ?> ]]> Nós instanciamos 2 objetos destas classes e exibimos informações sobre elas, incluindo o parentesco de suas classes. Nós também definimos algumas funções úteis, principalmente ter uma boa sáida de variáveis. test_script.php ]]> Uma coisa importante para notar no exemplo acima é que o objeto$leafy é uma instância da classeEspinafre que é uma subclasse de Vegetal, então a última parte do script acima retornará:
&reference.classobj.functions;