2016-07-21 23 views
2

Ich habe dieses Problem für eine Weile gehabt, und es hat mich wirklich gestört, also dachte ich, ich würde fragen. Wie können sie in Laravel den Zugang zu Fassaden mit zwei Namespaces ermöglichen? Wenn Sie nicht verstehen, was ich meine, hier ist ein Beispiel. Die beiden folgenden Aussagen sind möglich, wenn die Sitzung Fassade mit:Wie kann Laravel Fassaden in einem globalen und benutzerdefinierten Namensraum platzieren?

use Session; 
use Illuminate\Support\Facades\Session; 

Ich habe alle über das Internet gesucht und ich habe noch noch eine Antwort für dieses Problem zu finden.

Danke für jede Hilfe!

+1

https://www.sitepoint.com/how-laravel-facades-work-and-how-to-use-them-elsewhere/ - Fassaden-Aliase sind in der config/app.php, siehe Link für weitere Informationen auf Autoloader – apoq

+0

Danke das ist genau das, was ich gesucht habe. – Dastur

Antwort

1

In der Datei "config \ app.php" befindet sich ein Alias-Array, das in Illuminate \ Foundation \ AliasLoader verwendet wird. Dann Illuminate \ Foundation \ AliasLoader ruft class_alias Methode auf, um einen Alias ​​im globalen Namespace zu erstellen. Der tatsächliche Fluss ist ein wenig kompliziert wegen der Lazy Loading.