Laravel - Mặt tiền

Mặt tiền cung cấp một staticgiao diện với các lớp có sẵn trong vùng chứa dịch vụ của ứng dụng. Laravelfacades phục vụ như static proxies cho các lớp cơ bản trong vùng chứa dịch vụ, cung cấp lợi ích của cú pháp ngắn gọn, diễn đạt trong khi vẫn duy trì khả năng kiểm tra và tính linh hoạt hơn các phương thức tĩnh truyền thống.

Cách tạo Mặt tiền

Sau đây là các bước để tạo Facade trong Laravel:

  • Step 1 - Tạo tập tin lớp PHP.

  • Step 2 - Ràng buộc lớp đó với Nhà cung cấp dịch vụ.

  • Step 3 - Đăng ký ServiceProvider đó để

    Định cấu hình \ app.php làm nhà cung cấp.

  • Step 4 - Tạo Lớp mà lớp này mở rộng đến

    lluminate \ Hỗ trợ \ Mặt tiền \ Mặt tiền.

  • Step 5 - Đăng ký điểm 4 vào Config \ app.php làm bí danh.

Tham chiếu lớp mặt tiền

Laravel vận chuyển với nhiều Mặt tiền. Bảng sau đây hiển thị các tham chiếu lớp Facade có sẵn -

Mặt tiền Lớp học Ràng buộc vùng chứa dịch vụ
Ứng dụng Illuminate \ Foundation \ Application ứng dụng
Nghệ nhân Chiếu sáng \ Hợp đồng \ Bảng điều khiển \ Kernel nghệ nhân
Auth Illuminate \ Auth \ AuthManager auth
Auth (Phiên bản) Chiếu sáng \ Auth \ Guard
Lưỡi Illuminate \ View \ Compilers \ BladeCompiler blade.compiler
Xe buýt Chiếu sáng \ Hợp đồng \ Xe buýt \ Điều phối viên
Bộ nhớ đệm Illuminate \ Cache \ Repository bộ nhớ đệm
Cấu hình Illuminate \ Config \ Repository cấu hình
Bánh quy Chiếu sáng \ Cookie \ CookieJar bánh quy
Crypt Illuminate \ Encryption \ Encrypter mã hóa
DB Illuminate \ Database \ DatabaseManager db
DB (Phiên bản) Chiếu sáng \ Cơ sở dữ liệu \ Kết nối
Biến cố Chiếu sáng \ Sự kiện \ Điều phối viên sự kiện
Tập tin Illuminate \ Filesystem \ Filesystem các tập tin
Cánh cổng Chiếu sáng \ Hợp đồng \ Xác thực \ Truy cập \ Cổng
Băm Chiếu sáng \ Hợp đồng \ Hashing \ Hasher băm
Đầu vào Chiếu sáng \ Http \ Yêu cầu yêu cầu
Lang Chiếu sáng \ Bản dịch \ Trình dịch người phiên dịch
Nhật ký Illuminate \ Log \ Writer khúc gỗ
Thư Chiếu sáng \ Mail \ Mailer người đưa thư
Mật khẩu Illuminate \ Auth \ Passwords \ PasswordBroker auth.password
Xếp hàng Illuminate \ Queue \ QueueManager xếp hàng
Hàng đợi (Phiên bản) Illuminate \ Queue \ QueueInterface
Hàng đợi (Lớp cơ sở) Chiếu sáng \ Hàng đợi \ Hàng đợi
Chuyển hướng Illuminate \ Routing \ Redirector chuyển hướng
Redis Illuminate \ Redis \ Database redis
Yêu cầu Chiếu sáng \ Http \ Yêu cầu yêu cầu
Phản ứng Illuminate \ Contracts \ Routing \ ResponseFactory
Lộ trình Chiếu sáng \ Định tuyến \ Bộ định tuyến bộ định tuyến
Lược đồ Illuminate \ Database \ Schema \ Blueprint
Phiên họp Illuminate \ Session \ SessionManager phiên họp
Phiên (Phiên bản) Chiếu sáng \ Phiên \ Cửa hàng
Lưu trữ Chiếu sáng \ Hợp đồng \ Hệ thống tập tin \ Nhà máy hệ thống tập tin
URL Illuminate \ Routing \ UrlGenerator url
Trình xác thực Chiếu sáng \ Xác thực \ Nhà máy người xác nhận
Trình xác thực (Phiên bản) Chiếu sáng \ Xác thực \ Trình xác thực
Lượt xem Chiếu sáng \ Xem \ Nhà máy lượt xem
Xem (Phiên bản) Chiếu sáng \ Xem \ Xem

Thí dụ

Step 1 - Tạo một nhà cung cấp dịch vụ được gọi là TestFacadesServiceProvider bằng cách thực hiện lệnh sau.

php artisan make:provider TestFacadesServiceProvider

Step 2 - Sau khi thực hiện thành công, bạn sẽ nhận được kết quả sau:

Step 3 - Tạo một lớp được gọi là TestFacades.php tại App/Test.

App/Test/TestFacades.php

<?php
   namespace App\Test;
   class TestFacades{
      public function testingFacades() {
         echo "Testing the Facades in Laravel.";
      }
   }
?>

Step 4 - Tạo một lớp Mặt tiền được gọi là “TestFacades.php” tại “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'; }
}

Step 5 - Tạo một lớp Mặt tiền được gọi là TestFacadesServiceProviders.php tại 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;
      });
   }
}

Step 6 - Thêm nhà cung cấp dịch vụ vào tệp config/app.php như thể hiện trong hình dưới đây.

config/app.php

Step 7 - Thêm bí danh vào tệp config/app.php như thể hiện trong hình dưới đây.

config/app.php

Step 8 - Thêm các dòng sau vào app/Http/routes.php.

app/Http/routes.php

Route::get('/facadeex', function() {
   return TestFacades::testingFacades();
});

Step 9 - Truy cập URL sau để kiểm tra Mặt tiền.

http://localhost:8000/facadeex

Step 10 - Sau khi truy cập URL, bạn sẽ nhận được kết quả sau: