مشاوره رایگان
دریافت لینک های دانلود دریافت پستی درب منزل مبلغ کل: تومان
جهت دریافت کد تخفیف به کانال تلگرام مراجعه و یا با پشتیبان آنلاین هماهنگ نمایید

آموزش Facade ها در لاراول


Facade ها، برای کلاس هایی که در service container برنامه هستند، یک رابط ثابت (static interface) فراهم می کند.

کمترین مزایای facade ها این می باشد که، syntax خلاصه و روانی را بیان می کنند. بطوریکه، تست پذیری (testability) و انعطاف (flexibility) بیشتری را نسبت به، متدهای استاتیک قبلی (static method) برقرار می کنند.

تمام Facadeهای لاراول در فضای نام  Illuminate\Support\Facades تعریف شده‌اند. که برای بکارگیری از آن، می توانیداز کلمه use استفاده نمایید.

use Illuminate\Support\Facades\Cache;

Route::get('/cache', function () {
    return Cache::get('key');
});

این نکته گفتنی ست که، Facade ها به علت اینکه دستور العمل های ساده ای دارند، به کاربران اجازه می دهند، بدون به کار بردن نام کلاس، که به صورت دستی، به کلاس تزریق می شود، مورد استفاده قرار گیرند.

 

چگونه facade بسازیم

 در اینجا، مراحل زیر را برای ساخت facade درلاراول بیان می کنیم :

■ یک کلاس PHP بسازید.

■ کلاس ساخته شده را به Service Provider متصل (bind) کنید.

■ این ServiceProvider را در آرایه providers ها در فایل Config\app.php ثبت کنید.

■ کلاسی بسازید که مشتق شده (extend) از کلاس lluminate\Support\Facades\Facade باشد.

■ کلاس ساخته شده در مرحله 4 را در فایل Config\app.php در آرایه aliases ثبت کنید.

 

Facade Class Reference

در لاراول Facade های زیادی وجود دارد. جدول زیر این facade ها را نشان می دهد.

Facade

Class

Service Container Binding

App

Illuminate\Foundation\Application

app

Artisan

Illuminate\Contracts\Console\Kernel

artisan

Auth

Illuminate\Auth\AuthManager

auth

Auth (Instance)

Illuminate\Auth\Guard

 

Blade

Illuminate\View\Compilers\BladeCompiler

blade.compiler

Bus

Illuminate\Contracts\Bus\Dispatcher

 

Cache

Illuminate\Cache\Repository

cache

Config

Illuminate\Config\Repository

config

Cookie

Illuminate\Cookie\CookieJar

cookie

Crypt

Illuminate\Encryption\Encrypter

encrypter

DB

Illuminate\Database\DatabaseManager

db

DB (Instance)

Illuminate\Database\Connection

 

Event

Illuminate\Events\Dispatcher

events

File

Illuminate\Filesystem\Filesystem

files

Gate

Illuminate\Contracts\Auth\Access\Gate

 

Hash

Illuminate\Contracts\Hashing\Hasher

hash

Input

Illuminate\Http\Request

request

Lang

Illuminate\Translation\Translator

translator

Log

Illuminate\Log\Writer

log

Mail

Illuminate\Mail\Mailer

mailer

Password

Illuminate\Auth\Passwords\PasswordBroker

auth.password

Queue

Illuminate\Queue\QueueManager

queue

Queue (Instance)

Illuminate\Queue\QueueInterface

 

Queue (Base Class)

Illuminate\Queue\Queue

 

Redirect

Illuminate\Routing\Redirector

redirect

Redis

Illuminate\Redis\Database

redis

Request

Illuminate\Http\Request

request

Response

Illuminate\Contracts\Routing\ResponseFactory

 

Route

Illuminate\Routing\Router

router

Schema

Illuminate\Database\Schema\Blueprint

 

Session

Illuminate\Session\SessionManager

session

Session (Instance)

Illuminate\Session\Store

 

Storage

Illuminate\Contracts\Filesystem\Factory

filesystem

URL

Illuminate\Routing\UrlGenerator

url

Validator

Illuminate\Validation\Factory

validator

Validator (Instance)

Illuminate\Validation\Validator

 

View

Illuminate\View\Factory

view

View (Instance)

Illuminate\View\View

 

 

مثال :

مرحله 1 – طبق کدهای زیر یک service provider به نام TestFacadesServiceProvider بسازید.

php artisan make:provider TestFacadesServiceProvider

 

مرحله 2 – بعد از ساخت TestFacadesServiceProvider پیامی مبنی بر موفقت آمیز بودن دستور فوق برای شما نمایش داده می شود.

 

مرحله 3 – یک کلاس به نام TestFacades.php در مسیر App/Test  بسازید و کدهای زیر را در آن قرار بدهید.

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

 

مرحله 4 – یک کلاس facade به نام “TestFacades.php” در “App/Test/Facades” بسازید.

<?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  بسازید.

<?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 یک service provider ساخته شده را اضافه کنید، همانطور که در تصویر نشان داده شده است.

 

مرحله 7 – نام مستعار(alias) مطابق با service provider ساخته شده را،  نیز در فایل config/app.php ثبت کنید.

 

مرحله 8 – route زیر را در فایل app/Http/routes.php اضافه کنید.

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

 

مرحله 9 - مرورگر تارن را باز کنید و آدرس زیر را در آن وارد کنید.

http://localhost:8000/facadeex

 

مرحله 10 - پس از بازدید از URL، خروجی زیر را مشاهده خواهید کرد.

فصلِ: 28 , تعداد قسمت ها: 253 , سطح: صفر تا صد

این فصل در یک نگاه:

آشنایی با امکانات جدید لاراول ۷…

برخی از سرفصل های این پکیج آموزشی :   لاراول چیست و چرا ما لاراول استفاده میکنیم کامپوزر کارش چیه و نصب اون نصب لاراول آموزش نصب لاراول از طریق اینستالر آموزش نصب لاراول با استفاده ا…
فصلِ: 1 , تعداد قسمت ها: 2 , سطح: متوسط

این فصل در یک نگاه:

بهترین و پر بازده ترین روش تبدیل بازدیدکننده سایت به مشتری تبلیغات هدفمند و برند سازی هوشمندانه با ایمیل می باشد. ایمیل…

  وبینار(سمینار آنلاین) آموزش تکنیک های ایمیل مارکتینگ   اگر تا انتها این متن را مطالعه کنید نظر شما در مورد ایمیل مارکتینگ 180 درجه عوض می شود!! بر هیچکس پوشیده نیست که از سال 1972 که ای…
فصلِ: 4 , تعداد قسمت ها: 368 , سطح: صفر تا صد

این فصل در یک نگاه:

مباحث تکمیلی فریم ورک لاراول…

فصل اول :آموزش مقدماتی فریم ورک لاراول معرفی فریم ورک لاراول و پیشنیازهای انجام کار انجام کانفیگ های اولیه برای نصب و راه اندازی فریم ورک معرفی روش های نصب پروژه لاراولی از طریق سایت گی…
فصلِ: 1 , تعداد قسمت ها: 155 , سطح: صفر تا صد

این فصل در یک نگاه:

مباحث مقدماتی فریم ورک react.js…

توضیحات کلی مجموعه: فصل اول : آشنایی با مباحث مقدماتی فریم ورک react.js نصب و راه اندازی node.js  و کلیه پیش نیازهای لازم نصب فریم ورک react روی لوکال و انجام تست های لازم آغاز آشنایی …

تولید شده توسط کلیک سایت

پشتیبانی آنلاین
آماده پاسخگویی هستیم
انتخاب تصویر جهت ارسال:
در حال ضبط صدا

(جهت توقف و یا لغو ضبط از دکمه های زیر استفاده کنید)

توقف و ارسال :
لغو ضبط
در حال حاضر تمامی کارشناسان آفلاین هستند. همواره می توانید با شماره تلگرام / واتساپ 09010005000 به صورت آنلاین با ما در ارتباط باشید. جهت ورود به واتساپ کلیک کنید
0 پیام جدید
پشتیبان در حال تایپ ...
ارسال تصویر ضبط صدا
0 کارشناسان آنلاین می باشند
این گفت و گو توسط پشتیبان به اتمام رسید