Фасады предоставляют статический интерфейс для классов, доступных в сервис-контейнере приложения. Фасады в Laravel служат статическими прокси для базовых классов в сервис-контейнере, предоставляя преимущества краткого, выразительного синтаксиса, сохраняя при этом большую гибкость и тестируемость, чем традиционные статические методы.
Как создать Фасад
Ниже приведены шаги для создания фасада в Laravel.
- Шаг 1. Создайте файл класса PHP.
- Шаг 2. Привяжите этот класс к поставщику услуг.
- Шаг 3. Зарегистрируйте этого поставщика услуг в
- Config\app.php в качестве провайдеров.
- Шаг 4. Создайте класс, на который распространяется этот класс.
- подсветка\Поддержка\Фасады\Фасад.
- Шаг 5. Зарегистрируйте пункт 4 в Config\app.php как псевдонимы.
Справочник по классам фасадов
Laravel поставляется со многими фасадами. В следующей таблице показаны встроенные ссылки на класс Facade —
Пример
Шаг 1. Создайте поставщика услуг с именем TestFacadesServiceProvider, выполнив следующую команду.
php artisan make:provider TestFacadesServiceProvider
Шаг 2 — после успешного выполнения вы получите следующий вывод —
Шаг 3. Создайте класс с именем TestFacades.php в App/Test.
Приложение/Тест/TestFacades.php
<?php namespace App\Test; class TestFacades{ public function testingFacades() { echo "Testing the Facades in Laravel."; } } ?>
Шаг 4. Создайте класс Facade с именем TestFacades.php в 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'; } }
Шаг 5. Создайте класс Facade с именем TestFacadesServiceProviders.php в App/Test/Facades.
App/Providers/TestFacadesServiceProviders.php
<?php namespace App\Providers; use App; use Illuminate\Support\ServiceProvider; class TestFacadesServiceProvider extends ServiceProvider { public function boot() { // } public function register() { App::bind('test',function() { return new \App\Test\TestFacades; }); } }
Шаг 6. Добавьте поставщика услуг в файл config/app.php, как показано на рисунке ниже.
config/app.php
Шаг 7. Добавьте псевдоним в файл config/app.php, как показано на рисунке ниже.
config/app.php
Шаг 8. Добавьте следующие строки в app/Http/routes.php.
приложение/Http/routes.php
Route::get('/facadeex', function() { return TestFacades::testingFacades(); });
Шаг 9. Посетите следующий URL-адрес, чтобы протестировать фасад.
http://localhost:8000/facadeex
Шаг 10. После посещения URL-адреса вы получите следующий вывод:
Первоначально опубликовано на https://www.tutorialspoint.com.