php注册树模式,ThinkPHP容器之注册树模式

学习容器源码之前必须要学会另外一个设计模式注册树模式,这种设计模式也是容器的一个核心了。

二、注册树模式

为什么在这里说这个注册树模式,因为在框架中注册树模式就是一个主导位置,所以必须去了解它!

那什么是注册树模呢!注册树模式就是将对象实例注册到一颗树上(这里的树可不是真的树啊!就是注册到一个全局的属性里边)

然后可以通过内部方法从全局的树上获取对应的对象实例。

这样说的话肯定也不能更好的理解,接下来咔咔带大家看一个简单的案例来简单的了解一下。

一个注册树模式需要的东西就是四个,注册树的池子,将对象挂载到注册池里,从注册池里获取对象,从注册池里卸载对象。

如下图是咔咔写的一个简单的注册树模式。

代码如果看不懂的就需要去补补基础了哈!

aa916d4a8fcf99571608847253978f03.png

905948662482df8691a7287c0a2b8060.png接下来在到同一目录创建一个TestTree文件

549e86f96bc3a05326076cafc9be9851.png来到控制器测试写的注册树模式是否有问题

在做测试的时候一定要注意命名空间问题哈!这里的kaka目录是之前在类的自动加载哪里配置的,如有不会的可以去第一期文章查看。

这里就相当于先把TestTree这个类实例化出来

然后使用注册树模式把这个实例注册到object树池子中

最后使用get方式将这个类获取出来就可以直接调用TestTree中的方法了。

c99856f0edb610f86610aad4ec7d36a9.png最后看一下最终打印结果,结果就是TestTree类中getTreeContent方法的返回值。

5cc254cf291ecc3d2e203cdc138290a4.png注册树模式就是以上咔咔说明的这些内容,就是不去针对源码学习,这些内容也是我们必须要去学会使用的。坚持学习、坚持写博、坚持分享是咔咔从业以来一直所秉持的信念。希望在偌大互联网中咔咔的文章能带给你一丝丝帮助。我是咔咔,下期见。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值