Un trait est un mécanisme pour réutiliser du code dans plusieurs classes qui ne sont pas liées par l'héritage. Comme PHP ne permet que l'héritage simple, les traits offrent un moyen de partager des méthodes (et des propriétés) horizontalement — une forme de réutilisation de code « compositionnelle », comme les mixins.
Le problème que les traits résolvent
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.
