thinkphp5命名空间+自动加载

1.composer NS \  psr0 不要求
2.psr0里面最后一个\之后的类名中_会转换成路径分隔符
3.psr0有更深的目录结构
4类自动加载对应的目标文件查找方式

Loader::autoload  自动加载注册函数
Loader::findFile 加载文件查找函数
Loader::addClassMap 注册类别名
Loader::addNamespace  注册psr4命名空间
Loader::addNamespaceAlias 注册别名


PHP 命名空间
从广义上来说,命名空间是一种封装事物的方法。在很多地方都可以见到这种抽象概念。
    例如,在操作系统中目录用来将相关文件分组,对于目录中的文件来说,它就扮演了命名空间的角色。
具体举个例子,文件 foo.txt 可以同时在目录/home/one 和 /home/other 中存在,但在同一个目录中不能存在两个 foo.txt 文件。
       另外,在目录 /home/one外访问 foo.txt 文件时,我们必须将目录名以及目录分隔符放在文件名之前得到 /home/one/foo.txt。这个原理应用到程序设计领域就是命名空间
的概念。

延迟加载解决的问题
按需加载PHP类文件,免去加载没用到的类文件,提高系统性能

延迟加载实现原理
1.延迟加载又叫自动加载,通过注册加载函数__autoload() 或spl_autoload_register

猜你喜欢

转载自blog.csdn.net/taotaobaobei/article/details/84938376
今日推荐