author:咔咔


facade的优势和劣势

优势:facade就是可以把实际类中非静态中的方法通过代理类静态调用,应用解耦

劣势:会消耗会消耗一部分的系统资源来换取我们优雅的调用方式

总的来说利是大于弊的

普通的方法调用

创建一个test的工具类

【TP5.1】Facade的使用_thinkPHP

在控制器进行静态调用:

【TP5.1】Facade的使用_代理类_02 【TP5.1】Facade的使用_代理类_03


通过facade的方式进行调用

1.创将facade门面类

【TP5.1】Facade的使用_thinkPHP_04

2. 我们可以看一下核心库对facade的处理

【TP5.1】Facade的使用_thinkPHP_05

 3.我们就可以在仿照这个操作来,我们在common

【TP5.1】Facade的使用_代理类_06

在index文件使用facade的代理文件

【TP5.1】Facade的使用_代理类_07

 测试:

【TP5.1】Facade的使用_工具类_08

我们也可以通过设置别名的方式【TP5.1】Facade的使用_工具类_09 

【TP5.1】Facade的使用_工具类_10 【TP5.1】Facade的使用_工具类_11

facade的优化方案:

我们在日常工作的时候工具类肯定是特别多的,假如我们都这样写的话是不优雅的

创建一个facade的配置文件

【TP5.1】Facade的使用_初始化_12 在创建一个钩子

【TP5.1】Facade的使用_代理类_13

配置应用初始化,这样就可以确保应用在初始化就可以将系统所有代理类进行统一注册

【TP5.1】Facade的使用_工具类_14