En trait är en mekanism för att återanvända kod över flera klasser som inte är relaterade genom arv. Eftersom PHP endast tillåter enkelt arv, ger traits ett sätt att dela metoder (och egenskaper) horisontellt — en form av "kompositionell" kodåteranvändning, ungefär som mixins.
Problemet som traits löser
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.
