Como usar Traits no PHP

Traits no PHP é um recurso que pode nos auxiliar e muito em nossos projetos, melhorando o reuso de código.

Antes de iniciarmos esse aprendizado, é interessante ressaltar que Traits é um recurso disponibilizado no PHP desde sua versão 5.4 lançada em 01/03/2012, com o intuito de melhorar o reuso de códigos.

Basicamente Traits são pequenos trechos de códigos, muito similar a classes abstratas onde não podemos instanciar uma trait, porém, com a diferença que podemos utiliza-lo em diversas classes ao mesmo tempo de forma independente.

Para nosso exemplo, utilizaremos a seguinte estrutura, crie um diretório chamado ecommerce.

Em seguida devemos criar a classe ShopCar.php, com a seguinte estrutura.

Como podemos observar, criamos uma classe simples com a finalidade comprar produtos.

Vamos rodar nosso projeto para analisar o resultado do código implementado até o momento.

Crie um arquivo chamado “index.php”, dentro dele devemos importar nossa classe e chamar o método buy(), veja o resultado da implementação abaixo:

Acesse com o terminal a raiz do projeto e insira o seguinte código:

Por final abra um navegador e acesse o projeto:

Como resultado temos:

Após validarmos nosso código, devemos agora criar nossa Trait com o seguinte nome ‘LogTrait.php’, onde será responsável por armazenar os logs necessários em nossa aplicação.

Observação:

  • Apenas incluímos “Trait” em seu nome para  fins didáticos, não sendo obrigatório o uso dessa prática.

Como podemos observar, iniciamos com a palavra reservada “trait” e criamos nosso método info().

com isso nossa primeira “trait” está finalizada! Viram como é simples, bom agora devemos consumir esse recurso. Abra a classe ShopCar para que possamos importar nossa trait. Veja o resultado da implementação abaixo:

Muito similar a uma class, porem chamamos nossa trait dentro da declaração da classe (declaramos ‘use’ dentro da classe), onde a partir disso temos o acesso ao método info() implementado em nossa trait.

Para analisar as novas implementações, basta acessar nosso projeto novamente e atualizar o nevegador, abaixo segue o resultado esperado:

Com isso implementamos nossa primeira trait de forma simples e rápida! Podemos utilizar quantas traits desejarmos em nossa classe, porém, devemos sempre utilizar com parcimônia para que nossa classe não se torne um monstrinho de 3 cabeças e 6 patas 🙂

Espero que tenham apreciado e que o conteúdo agregue valor em seus projetos, convido para que deixem um comentário caso tenham dúvida, critica, sugestões ou elogios.

Grande abraço e até a próxima 🙂

10 thoughts on “Como usar Traits no PHP”

    1. Olá, António Pereira.

      Fico feliz que tenha apreciado o conteúdo, se possível compartilhe com seus amigos 🙂

  1. Muito legal, mas não explica exatamente o motivo de usar traits, quais benefícios e tal. Obs: É uma crítica construtiva.

    Abraço!

    1. Olá, Alipio.

      Fico feliz que tenha apreciado o post.

      Traits tem como objetivo auxiliar na reutilização de código, resolvendo problemas de herança de classes. Nem sempre podemos alterar uma classe que herdamos em virtude dela ser consumida em diversos lugares em nossa aplicação, com isso podemos utilizar Traits deixando nossa solução mais elegante.

      Espero que tenha conseguido sanar sua dúvida 🙂

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *