2016-05-10 5 views
1

Ich habe etwas über die Verwendung und Namespaces in PHP gegoogelt, aber nach ein paar Recherchen habe ich keine Antwort gefunden.Wie funktioniert "verwenden" in Laravel Arbeit - z. benutze Auth, benutze DB

use [foo] bedeutet, foo-Klasse aus dem relativen Verzeichnis zu verwenden (Laravel weiß, welche Datei zu verwenden ist).

Aber ich sehe keine Auth oder DB-Klassen relativ zu meiner Arbeitsdatei. Gibt es Aliase, von denen ich nichts weiß?

Zusätzlich in view.blade.php warum kann ich Auth::check() ohne zu sagen use Auth?

+2

[Namespaces in PHP] (http://php.net/manual/en/language.namespaces.php) –

+0

Und 'Auth' wird als Alias ​​in Laravel gesetzt, was bedeutet, dass Laravel bereits das Mapping zum Namespaced Auth class –

Antwort

2

Werfen Sie einen Blick in die config/app.php Datei.

Hier finden Sie einen aliases Abschnitt, der zeigt, wo all diese shorthands definiert sind.

Für Ihre Ansichten, vorausgesetzt, Sie verwenden Blade, wenn diese von Laravel kompiliert werden, werden diese Aliase ebenfalls zur Verfügung gestellt.

+0

Wenn ich "parsedown" -Paket mit Composer installiere, kann ich auch "Parsedown verwenden" sagen. Gibt es einen anderen Ort, der Aliase definiert? – Innn

+0

Parsdown (angenommen, du meinst erusev/parsedown) sieht so aus, als ob es seine Klasse nicht in Unterordner legt, also kannst du einfach "Parsedown" benutzen. Dies wird durch Autoloading behandelt - Sie finden dies möglicherweise nützlich für weitere Informationen: https://laracasts.com/lessons/psr-4-autoloading –