Un trait est un ensemble de méthodes et de propriétés réutilisable dans plusieurs classes sans héritage, via le mot-clé use. Il permet de partager du code entre classes non apparentées. Les conflits de noms se résolvent avec insteadof et as.
Exemple
trait Horodate {
public ?string $creeLe = null;
}
class Article { use Horodate; }