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

相关文章
相关标签/搜索