Thinkphp5源码分析第三章(紧接第二章,分析其中的autoload方法体内的findFile方法函数 ,addPsr4(),registerComposerLoader())

findFile函数这里接着讲起,首先像上图我标识的A处这样输出我们的这个属性值,他此类下定义的一个数组,这里此时里面已经存放了TP5框架中的所有类库文件名称,像这样的 

(think\Route),这个类库包括composer文件夹,也即是根目录下的vendor目录里面的类库。

接着我们注意这里的C处跟D处正好通过一种取巧的方式,他们正好完全一模一样。之所以通过这样的foreach循环方式,是因为这样获取到的$prefix(文件前缀 这里时foreach里面的key--键 与数组$class比对更加简便明了)

B:这个strpos()是获取函数$class首次出现的位置,前面三个等号很关键,因为这个函数手册中规定如下图所示

这里的$prefixDirsPsr4变量是在下面的addPsr4()函数和addPsr0函数处赋予了值,且强制定义为了数组类型,就是像这样的写法(array)$path。因为手册中有提到他遵循psr-0,psr-4规范所以整个Loader类中才会写入两个不同的添加psr空间方法。当我们想要使用自动加载类的时候就必须遵循此规范,此规范会定义namespace等一些要求。这里给出一篇一位老哥写的psr0和psr4的规范理解(点击后面的链接两字)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

:::::::::

生活多磨赚钱可多

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值