Uma trait é um mecanismo para reutilizar código em múltiplas classes que não estão relacionadas por herança. Como PHP permite apenas herança única, traits fornecem uma forma de compartilhar métodos (e propriedades) horizontalmente — uma forma de reutilização de código "composicional", como mixins.
O problema que traits resolvem
PHP has single inheritance — a class can extend only ONE parent. But you often want
to share the SAME methods across unrelated classes (e.g. logging, timestamps).
Duplicating the code is bad; traits let you reuse it without inheritance.
