php 反射 容器类,ThinkPHP容器之反射机制

反射在容器中有着你不看源码根本了解不到的重要性,一定要好好看看本文

四、必会反射机制

不知道大家有没有了解过GO的反射机制,咔咔在当时看了go的反射机制后说实话有点晕乎乎的。

但是在后来看了PHP的反射之后,不仅对go的反射有了一定的深入了解,并且对于PHP的反射也是更好的理解。

反射这一概念是在PHP5.0被引出来的,在目前使用的框架中咔咔知道的就有thinkphp和laravel都使用了反射来实现依赖注入。

对于反射的理解:其实就是从根获取根以外的东西,放在编程中讲就是只要知道一个类就可以知道这个类所有的属性和方法。

案例

这只是一个简单的实现案例,获取类的全部方法和属性。可以看下图中的打印结果跟TestReflection是否一致。

53228e23e936a75bcfc65a3c3f98d725.png

b691107d28ebd41ea0be8ad3083847fb.png

这个也从侧面表现出现一个问题,就是会暴露出来一些本不应该暴露出来的信息。

关于反射提供的接口还有很多,这里就介绍几个常用的,其余的在框架源码中解析。

使用反射执行一个类的方法

打印出来的结果就是咔咔

8da2a9d986ed5784c239e3f745bea84a.png使用反射执行一个类中带参数的方法47b325bd10d9f805837c1fb86d7ade27.png在这里插入图片描述

使用反射执行一个类中不带参数的方法

3c8b2c347d63c2ea0ee7e4cdf00889ca.png其它的方法你们自己可以尝试尝试,因为这个反射的接口在平时基础开发是不怎么用的,这咔咔给大家介绍的都是后边在阅读源码都是可以用的到的。

既然了解到了反射,那么反射可以做什么事情呢!其中有一个功能点自动生成文档。

反射到这里就简单的了解一下,至于还想了解更多的接口使用可以去官方查看对应的接口信息。6410e9cab5d6ae4bf2e328cc3358d6ce.png在这里插入图片描述

在了解完反射之后就要开始进入正题了,就需要正式进入我们的容器环节了。只有上边的基础打好接下来的容器才能更好的理解。坚持学习、坚持写博、坚持分享是咔咔从业以来一直所秉持的信念。希望在偌大互联网中咔咔的文章能带给你一丝丝帮助。我是咔咔,下期见。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值