Usando os operadores -> e :: para classes

Publicado por Rodrigo Caldeira de Paula Lima em 27/03/2003

[ Hits: 4.150 ]

 


Usando os operadores -> e :: para classes



Uma dúvida que muitos tem sobre classes é como usar os operadores :: e -> e qual a diferença entre elas.

O operador -> é usado para acessar as funções e propriedades de classes que já foram instanciadas, por exemplo:
class $foo {
  function bar() {
    echo "Função bar()";
  }
}

$classe = new $foo;
$classe -> bar();
primeiro, instanciamos a classe $foo na variável $classe e com o operador -> acessamos a função bar().

Mas nós poderíamos acessar a função bar() da classe $foo sem instanciá-la, assim:
class $foo {
  function bar() {
    echo "Função bar()";
  }
}

$foo::bar();
isso faz a mesma coisa que o primeiro código, porém sem a necessidade de instanciar a classe $foo.

As vezes isso é útil para classes que não necessitam realmente de instancialização, como as classes do PHP-GTK.

[]'s

Outras dicas deste autor

PHP na linha de comando

Leitura recomendada

Executando comandos do sistema com PHP

Instalação do LAMP no Ubuntu

Aviso de erro em arquivo de configuração do PHP

Xampp - Maneira fácil de se instalar um servidor LAMP (Apache, MySQL e PHP)

Descobrindo informações sobre o PHP

  

Comentários
[1] Comentário enviado por GrupoFimdeprova em 13/08/2004 - 08:41h

Tem um Grave Erro de sintaxe nesta Dica.

o caractere '$' serve para iniciar variáveis, e não o Nome da Classe.

Não funcionar se alguém tentar

[2] Comentário enviado por jitto em 06/10/2004 - 08:53h

Para que serve o instanciamento?



Contribuir com comentário