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?
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:
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)
Tags und Links php namespaces laravel-5 laravel-5.1