- Laravel - Action URL
- Laravel - Dump Server
- Laravel - Pagination Customizations
- Laravel - Artisan Commands
- Laravel - Guest User Gates
- Understanding Release Process
- Laravel - Hashing
- Laravel - Encryption
- Laravel - Artisan Console
- Laravel - Authorization
- Laravel - Authentication
- Laravel - CSRF Protection
- Laravel - Contracts
- Laravel - Facades
- Laravel - Event Handling
- Laravel - Error Handling
- Laravel - Ajax
- Laravel - Sending Email
- Laravel - File Uploading
- Laravel - Validation
- Laravel - Session
- Laravel - Localization
- Laravel - Forms
- Laravel - Errors & Logging
- Laravel - Working With Database
- Laravel - Redirections
- Laravel - Blade Templates
- Laravel - Views
- Laravel - Response
- Laravel - Cookie
- Laravel - Request
- Laravel - Controllers
- Laravel - Namespaces
- Laravel - Middleware
- Laravel - Routing
- Laravel - Configuration
- Laravel - Application Structure
- Laravel - Installation
- Laravel - Overview
- Laravel - Home
Laravel Useful Resources
Selected Reading
- Who is Who
- Computer Glossary
- HR Interview Questions
- Effective Resume Writing
- Questions and Answers
- UPSC IAS Exams Notes
Laravel - Facades
Facades provide a static interface to classes that are available in the apppcation s service container. Laravel facades serve as static proxies to underlying classes in the service container, providing the benefit of a terse, expressive syntax while maintaining more testabipty and flexibipty than traditional static methods.
How to create Facade
The following are the steps to create Facade in Laravel −
Step 1 − Create PHP Class File.
Step 2 − Bind that class to Service Provider.
Step 3 − Register that ServiceProvider to
Configapp.php as providers.
Step 4 − Create Class which is this class extends to
lluminateSupportFacadesFacade.
Step 5 − Register point 4 to Configapp.php as apases.
Facade Class Reference
Laravel ships with many Facades. The following table show the in-built Facade class references −
Facade | Class | Service Container Binding |
---|---|---|
App | IlluminateFoundationApppcation | app |
Artisan | IlluminateContractsConsoleKernel | artisan |
Auth | IlluminateAuthAuthManager | auth |
Auth (Instance) | IlluminateAuthGuard | |
Blade | IlluminateViewCompilersBladeCompiler | blade.compiler |
Bus | IlluminateContractsBusDispatcher | |
Cache | IlluminateCacheRepository | cache |
Config | IlluminateConfigRepository | config |
Cookie | IlluminateCookieCookieJar | cookie |
Crypt | IlluminateEncryptionEncrypter | encrypter |
DB | IlluminateDatabaseDatabaseManager | db |
DB (Instance) | IlluminateDatabaseConnection | |
Event | IlluminateEventsDispatcher | events |
File | IlluminateFilesystemFilesystem | files |
Gate | IlluminateContractsAuthAccessGate | |
Hash | IlluminateContractsHashingHasher | hash |
Input | IlluminateHttpRequest | request |
Lang | IlluminateTranslationTranslator | translator |
Log | IlluminateLogWriter | log |
IlluminateMailMailer | mailer | |
Password | IlluminateAuthPasswordsPasswordBroker | auth.password |
Queue | IlluminateQueueQueueManager | queue |
Queue (Instance) | IlluminateQueueQueueInterface | |
Queue (Base Class) | IlluminateQueueQueue | |
Redirect | IlluminateRoutingRedirector | redirect |
Redis | IlluminateRedisDatabase | redis |
Request | IlluminateHttpRequest | request |
Response | IlluminateContractsRoutingResponseFactory | |
Route | IlluminateRoutingRouter | router |
Schema | IlluminateDatabaseSchemaBlueprint | |
Session | IlluminateSessionSessionManager | session |
Session (Instance) | IlluminateSessionStore | |
Storage | IlluminateContractsFilesystemFactory | filesystem |
URL | IlluminateRoutingUrlGenerator | url |
Vapdator | IlluminateVapdationFactory | vapdator |
Vapdator (Instance) | IlluminateVapdationVapdator | |
View | IlluminateViewFactory | view |
View (Instance) | IlluminateViewView |
Example
Step 1 − Create a service provider called TestFacadesServiceProvider by executing the following command.
php artisan make:provider TestFacadesServiceProvider
Step 2 − After successful execution, you will receive the following output −
Step 3 − Create a class called TestFacades.php at App/Test.
App/Test/TestFacades.php
<?php namespace AppTest; class TestFacades{ pubpc function testingFacades() { echo "Testing the Facades in Laravel."; } } ?>
Step 4 − Create a Facade class called “TestFacades.php” at “App/Test/Facades”.
App/Test/Facades/TestFacades.php
<?php namespace appTestFacades; use IlluminateSupportFacadesFacade; class TestFacades extends Facade { protected static function getFacadeAccessor() { return test ; } }
Step 5 − Create a Facade class called TestFacadesServiceProviders.php at App/Test/Facades.
App/Providers/TestFacadesServiceProviders.php
<?php namespace AppProviders; use App; use IlluminateSupportServiceProvider; class TestFacadesServiceProvider extends ServiceProvider { pubpc function boot() { // } pubpc function register() { App::bind( test ,function() { return new AppTestTestFacades; }); } }
Step 6 − Add a service provider in a file config/app.php as shown in the below figure.
config/app.php
Step 7 − Add an apas in a file config/app.php as shown in the below figure.
config/app.php
Step 8 − Add the following pnes in app/Http/routes.php.
app/Http/routes.php
Route::get( /facadeex , function() { return TestFacades::testingFacades(); });
Step 9 − Visit the following URL to test the Facade.
http://localhost:8000/facadeex
Step 10 − After visiting the URL, you will receive the following output −
Advertisements