Traits für PHP
Kommentare

Traits sind mitunter eine feine Sache, erlauben sie doch den Einsatz von Methoden über die Klassenhierarchie hinaus. Nur wird das Ganze derzeit nicht out-of-the-box in PHP unterstützt – einen möglichen

Traits sind mitunter eine feine Sache, erlauben sie doch den Einsatz von Methoden über die Klassenhierarchie hinaus. Nur wird das Ganze derzeit nicht out-of-the-box in PHP unterstützt – einen möglichen Ausweg beschreibt Steve Hollis aktuell in seinem Blog. Mit Trait-like Functionality for PHP beschreibt er einen Weg, der Traits als Klassen einführt, die eine My_Traits_Abstract-Klasse erweitern. Die in der Trait-Klasse enthaltenen public Functions können so von jeder Klasse angesprochen werden, zu der die Trait-Klasse zugefügt wurde.

Das komplette Beispiel, inklusive des benötigten Codes gibt es in Steve’s Blog. Wer sich näher mit Traits auseinandersetzen möchte, dem sei auch der aktuelle RFC für den Traits-Patch von Stefan Marr empfohlen. Selbigen stellt Stefan auch per GitHub zum Ausprobieren bereit.

Ganz neu ist die Idee übrigens nicht. Wie auch der RFC zu den Traits in PHP gibt es bereits seit langem auch Multiple Inheritance-Vorschläge, u.a. von Ian Selby oder Martin Pietschmann, die dem Ansatz von Steve Hollis nahekommen.

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -