Warum :: Klasse an die PHP-Klasse in Laravel 5.1 angehängt ist

8

In Laravel 5.0 wird Code wie folgt für Namen-Pacing / Lade-Klassen verwendet:

%Vor%

Allerdings sehe ich das in Laravel 5.1

%Vor%

Meine Frage: Was ist der Vorteil dieses Illuminate\Bus\BusServiceProvider::class über diesem 'Illuminate\Bus\BusServiceProvider' , wann sollte ::class an einen Klassennamen angehängt werden?

Gibt es welche wo finde ich das in der PHP-Dokumentation?

    
Digitlimit 12.06.2015, 10:43
quelle

1 Antwort

13

PHP-Dokumentation zu :: class

Das Feature wurde mit der Version 5.5 eingeführt, die jetzt von Laravel 5.1 benötigt wird.

Die Eigenschaft magic ::class enthält den FQN (vollständig qualifizierten Namen) der Klasse.

Die Vorteile davon kommen meist mit einer guten IDE. Einige sind:

  • Weniger Tippfehler
  • Leichteres Refactoring
  • Automatische Vervollständigung
  • Klicken Sie auf die Klasse, um zu der Datei
  • zu springen

Manchmal ist es auch schön, dass Sie die Klasse importieren können, anstatt den vollständigen Namen im Code zu haben. Dies macht Ihren Code sauberer und alle Abhängigkeiten werden mit use am Anfang der Klasse deklariert. (Ich sage manchmal, weil es zum einen nicht sinnvoll ist, alle Klassen in einer Konfigurationsdatei wie app.php zu importieren)     

lukasgeiter 12.06.2015, 11:00
quelle