Facades bieten eine statische Schnittstelle zu Klassen, die im Servicecontainer der Anwendung verfügbar sind. Laravel-Fassaden fungieren als statische Proxys für zugrunde liegende Klassen im Service-Container und bieten den Vorteil einer knappen, ausdrucksstarken Syntax bei gleichzeitig höherer Testbarkeit und Flexibilität als herkömmliche statische Methoden So erstellen Sie eine Fassade Im Folgenden sind die Schritte zum Erstellen einer Fassade in Laravel aufgeführt −
Schritt 1
- PHP-Klassendatei erstellen.Schritt 2
– Binden Sie diese Klasse an den Dienstanbieter.Schritt 3
– Registrieren Sie diesen Dienstanbieter bei
Schritt 4
– Erstellen Sie eine Klasse, auf die sich diese Klasse erstreckt
Schritt 5
- Registrieren Sie Punkt 4 in Configapp.php als Laravel - Fassadene.Fassadenklassenreferenz
Laravel wird mit vielen Fassaden geliefert. Die folgende Tabelle zeigt die integrierten Facade-Klassenreferenzen −Fassade
App | IlluminateFoundationApplication | |
---|---|---|
Kunsthandwerklich | IlluminateContractsConsoleKernel | |
Auth | IlluminateAuthAuthManager | |
Auth (Instanz) | IlluminateAuthGuard | |
Klinge | IlluminateViewCompilersBladeCompiler | |
Bus | IlluminateContractsBusDispatcher | |
Cache | IlluminateCacheRepository | |
Konfigurieren | IlluminateConfigRepository | |
Keks | IlluminateCookieCookieJar | |
Krypta | IlluminateEncryptionEncrypter | |
DB | IlluminateDatabaseDatabaseManager | |
DB (Instanz) | IlluminateDatabaseConnection | |
Veranstaltung | IlluminateEventsDispatcher | |
Datei | IlluminateFilesystemFilesystem | |
Tor | IlluminateContractsAuthAccessGate | |
Hash | IlluminateContractsHashingHasher | |
Eingabe | IlluminateHttpRequest | |
Lang | IlluminateTranslationTranslator | |
Protokoll | IlluminateLogWriter | |
IlluminateMailMailer | ||
Passwort | IlluminateAuthPasswordsPasswordBroker | |
Warteschlange | IlluminateQueueQueueManager | |
Warteschlange (Instanz) | IlluminateQueueQueueInterface | |
Warteschlange (Basisklasse) | IlluminateQueueQueue | |
Weiterleiten | IlluminateRoutingRedirector | |
Redis | IlluminateRedisDatabase | |
Anfrage | IlluminateHttpRequest | |
Antwort | IlluminateContractsRoutingResponseFactory | |
Route | IlluminateRoutingRouter | |
Schema | IlluminateDatabaseSchemaBlueprint | |
Sitzung | IlluminateSessionSessionManager | |
Sitzung (Instanz) | IlluminateSessionStore | |
Speicher | IlluminateContractsFilesystemFactory | |
URL | IlluminateRoutingUrlGenerator | |
Validator | IlluminateValidationFactory | |
Validator (Instanz) | IlluminateValidationValidator | |
Ansicht | IlluminateViewFactory | |
Ansicht (Instanz) | IlluminateViewView | |
BeispielSchritt 1 - Erstellen Sie einen Dienstanbieter namens TestLaravel - Fassaden, indem Sie den folgenden Befehl ausführen. php artisan make:provider TestLaravel - Fassaden Nach dem Login kopieren Schritt 2 − Nach erfolgreicher Ausführung erhalten Sie folgende Ausgabe − Schritt 3 − Erstellen Sie eine Klasse namens TestFacades.php unter App/Test. App/Test/TestFacades.php <?php namespace App\Test; class TestFacades{ public function testingFacades() { echo "Testing the Facades in Laravel."; } } ?> Nach dem Login kopieren Schritt 4 − Erstellen Sie eine Fassadenklasse mit dem Namen „TestFacades.php“ unter „App/Test/Facades“. App/Test/Facades/TestFacades.php <?php namespace app\Test\Facades; use Illuminate\Support\Facades\Facade; class TestFacades extends Facade { protected static function getFacadeAccessor() { return 'test'; } } Nach dem Login kopieren Schritt 5 – Erstellen Sie eine Facade-Klasse mit dem Namen TestLaravel - Fassadens.php unter App/Test/Facades. App/Providers/TestLaravel - Fassadens.php <?php namespace App\Providers; use App; use Illuminate\Support\ServiceProvider; class TestLaravel - Fassaden extends ServiceProvider { public function boot() { // } public function register() { App::bind('test',function() { return new \App\Test\TestFacades; }); } } Nach dem Login kopieren Schritt 6 – Fügen Sie einen Dienstanbieter in einer Datei config/app.php hinzu, wie in der folgenden Abbildung gezeigt. config/app.php Schritt 7 – Fügen Sie einen Laravel - Fassaden in einer Datei config/app.php hinzu, wie in der folgenden Abbildung gezeigt. config/app.php Schritt 8 − Fügen Sie die folgenden Zeilen in app/Http/routes.php. hinzuapp/Http/routes.php Route::get('/facadeex', function() { return TestFacades::testingFacades(); }); Nach dem Login kopieren Schritt 9 − Besuchen Sie die folgende URL, um die Fassade zu testen. http://localhost:8000/facadeex Nach dem Login kopieren Schritt 10 − Nach dem Besuch der URL erhalten Sie die folgende Ausgabe − |
Das obige ist der detaillierte Inhalt vonLaravel - Fassaden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!