TP5.1Facade融合微信公衆號(Loader認識)

總結:

facade沒有你想的那麼高大上,就拿下面的這個案例使用白花文解釋

1.咱們第一步確定是建立一個facade的一個代理類WeinxinUtilFacade繼承facade

2.在common裏邊註冊核心類庫靜態代理(其實就是給實際類起別名),實例化實際類的時候,直接實例化代理類便可

3.就以下案例,自己是直接use app\util\WeixinUtil。而後實例化調用check方法便可

4.可是使用facade後,就變成了使用use app\facade\WeixinUtilFacade(在common裏邊不是已經將app\util\WeixinUtil從新命名給了app\facade\WeixinUtilFacade,因此在這裏也是能夠直接check方法,實際仍是實際類的方法)

 

Loader 是爲了註冊類庫別名使用的

左邊是facade的別名,右邊是facade的代理類(下拉看解釋)

 

 

1.首先咱們仍是建立一個WeixinUtilFacade這個類php

 

2.註冊核心類庫的靜態代理,app

這段代碼是facade代理類,右邊是實際類,也能夠理解爲左邊是右邊的別名,實例化左邊的這個類,也能夠直接調用左邊類的方法spa

// 應用公共文件
use think\Facade;
use think\Loader;

// 註冊核心類庫的靜態代理
Facade::bind([

	// 就是facade的代理類=>實際類

	\app\facade\WeixinUtilFacade::class=>\app\util\WeixinUtil::class,

	]);

 

 

3.在Weixin.php  token的驗證代理

直接實例化代理類,而後調用方法便可,這裏靜態調用的其實就是util類的checkcode

 

<?php

namespace app\index\controller;

use think\Controller;
use Request;
use Log;
use app\facade\WeixinUtilFacade;
use app\util\WeixinUtil;

class Weixin extends Controller
{
	
    /**
     * 顯示資源列表
     *
     * @return \think\Response
     */
    public function index()
    {

        // return 123;
        return WeixinUtilFacade::check();
        // $WeixinUtil = new WeixinUtil();
        // return $WeixinUtil->check();
    }

   
}

4.WeixinUtil這個類繼承

 

Loader 是爲了註冊類庫別名使用的token

在common裏邊註冊核心類庫靜態代理時,也能夠對註冊的靜態類庫進行起別名資源

用法也就很簡單了,左邊是起的別名,右邊便是註冊的核心類庫靜態代理名(也就是靜態代理)io

相關文章
相關標籤/搜索