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

Utilizando o método __toString()

17/01/2009  Pablo DallOglio 

Um dos conceitos na orientação a objetos é a unicidade. Cada objeto é único no sistema, não existem dois objetos iguais.

Você constata isto simplesmente imprimindo o objeto na tela, pois o sistema irá exibir o OID (object identificator) do objeto em memória. Cada objeto possui um OID diferente.

Caso você queira que o sistema exiba outra informação ao imprimir o objeto, utilize o método __toString(), ele permite redefinir o comportamento padrão ao se utilizar, por exemplo, o comando “print” ou “echo” sobre um objeto, sendo interessante para fins de debug.

A seguir temos duas classes e um objeto de cada classe. A primeira não utiliza o __toString(), sendo exibido o OID do objeto, a segunda utiliza, sendo exibido o nome da pessoa.



<?php
class Automovel
{
    private 
$modelo;

    function 
setModelo($modelo)
    {
        
$this->modelo = $modelo;
    }
}

class 
Pessoa
{
    private 
$nome;

    function 
setNome($nome)
    {
        
$this->nome = $nome;
    }

    function 
__toString()
    {
        return 
'#'.$this->nome;
    }
}

$palio = new Automovel;
$palio->setModelo('Palio ED 1.0');
echo 
$palio; // resultado = Object id #1
echo "\n<br>\n"; //quebra linha

$maria = new Pessoa;
$maria->setNome('Mariana Pereira');
echo 
$maria; // resultado = #Mariana Pereira
echo "\n<br>\n"; //quebra linha
?>




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