Klassennamen-Auflösung via class-Keyword auf dem Weg in den PHP 5.5 Core
Kommentare

Mit hoher Wahrscheinlichkeit werden Mocking, Doctrine oder Dependency Injection mit PHP 5.5 noch ein Stückchen einfacher, dank der neuen ClassName::class-Syntax. Sie nutzt class als Keyword und kollidiert

Mit hoher Wahrscheinlichkeit werden Mocking, Doctrine oder Dependency Injection mit PHP 5.5 noch ein Stückchen einfacher, dank der neuen ClassName::class-Syntax. Sie nutzt class als Keyword und kollidiert nicht mit bestehenden Konstanten. Der eine oder andere wird an die Syntax ClassName.class aus Java erinnert werden.

Eine Sammlung an Anwendungsbeispielen liegt im RFC von Ralph Schindler vor. Dort wurde unlängst das Votum abgehalten, ob man das Feature mit PHP 5.5 ausliefern sollte. Zwar ergeben sich durch ClassName::class keine Brüche mit älteren PHP-Versionen, jedoch gibt es noch einige Designfragen zu klären, weshalb das 10:1 Ergebnis zugunsten der neuen Syntax vorerst außer Acht gelassen wird.

Im jüngsten Patch erörtert man weitere Klassennamen-Resolver wie self::class, static::class, parent::class, und klopft diese auf Fehler ab. Mal sehen, wann sich ::class bei den neuen Features von PHP 5.5 einreihen darf.

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -