TP5.1Facade融合微信公众号(Loader认识)

简介: 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这个类



image.png


2.注册核心类库的静态代理,


这段代码是facade代理类,右边是实际类,也可以理解为左边是右边的别名,实例化左边的这个类,也可以直接调用左边类的方法


// 应用公共文件
use think\Facade;
use think\Loader;
// 注册核心类库的静态代理
Facade::bind([
  // 就是facade的代理类=>实际类
  \app\facade\WeixinUtilFacade::class=>\app\util\WeixinUtil::class,
  ]);



image.png


3.在Weixin.php  token的验证


直接实例化代理类,然后调用方法即可,这里静态调用的其实就是util类的check

<?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这个类


image.png



Loader 是为了注册类库别名使用的


在common里边注册核心类库静态代理时,也可以对注册的静态类库进行起别名


用法也就很简单了,左边是起的别名,右边即是注册的核心类库静态代理名(也就是静态代理)


image.png

相关文章
|
中间件
对TP5.1中间件融合微信公众号代码的优化
对TP5.1中间件融合微信公众号代码的优化
120 0
对TP5.1中间件融合微信公众号代码的优化
|
中间件
TP5.1中间件的使用(融合微信公众号)
TP5.1中间件的使用(融合微信公众号)
280 1
TP5.1中间件的使用(融合微信公众号)
TP5.1行为钩子结合Facade融合微信公众号
TP5.1行为钩子结合Facade融合微信公众号
67 0
TP5.1行为钩子结合Facade融合微信公众号
|
6月前
|
小程序 PHP
微信公众号开发(一)打通服务器与微信之间的通信
说来惭愧PHP做了这么久,好像就没有从头开发过一个微信公众号,这次刚好有机会从头接入开发一个完整的公众号,也不能说完整,但是这些微信的接口我基本上都试一试~看看大概是什么情况。 首先:打通服务器与微信之间的通信。
82 0
|
1月前
|
开发者
微信公众平台开发基本配置
微信公众平台开发基本配置
99 0
|
1天前
|
Java API
java进行微信公众号开发
java进行微信公众号开发
5 0
|
1月前
|
人工智能 Python
【Python + 微信】微信公众号开发避坑指南
【Python + 微信】微信公众号开发避坑指南
33 0
|
1月前
|
XML 安全 Java
如何开发微信公众号后台
如何开发微信公众号后台
|
1月前
|
移动开发 JavaScript
微信公众号H5开发,在微信浏览器打开H5,无法一键下载图片
微信公众号H5开发,在微信浏览器打开H5,无法一键下载图片
87 0
|
1月前
|
XML Go 数据格式
【微信公众号开发】基于golang的公众号开发——接入消息自动回复接口
【微信公众号开发】基于golang的公众号开发——接入消息自动回复接口
230 0

热门文章

最新文章