本文主要是咔咔对框架代码做的一点优化,这只是咔咔的优化思路。
十、框架底层配置加载代码优化
在thinkphp/library/think/Config.php
中方法loadFile这里看起来是不是有点不太优雅了。
既然在方法最后使用parse
方法,也就是之前提到的工厂模式加载其它类型的配置文件。
那么为何不让这个工厂模式也加载PHP和yaml类型的配置文件。
此时就需要在
thinkphp/library/think/config/driver
这个目录建立php文件和yaml文件了。
首先建立一个php文件。
并且仿照其它三个类型文件,在php文件类型中只需要判断是否为文件,然后把文件引入进来即可。
在框架中PHP类型的配置文件都是数组形式的,所以在Php.php文件中parse方法直接返回config属性即可。
开始开心的测试吧!之前在env的文件中配置了CONFIG_EXT这个值为yaml。
也就是说读取config目录下的配置文件时,只能读取扩展为yaml类型的文件。
所以需要先把这个值给改回来,等后面把yaml类型的工厂类写好之后就可以使用了。
为了测试方便在config目录下添加一个新的配置
然后把config类中的lodeFile方法中判断php和yaml类型的代码注释掉

在控制器读取config/app.php配置
打印结果
打印出来的结果没有任何瑕疵,也就说我们进行简单优化的代码并没有不适之处。至于yaml也是一样的道理,只需要把最终的数据转为数组返回就行了。
以上就是咔咔对框架配置文件加载底层源码优化的解析过程,如有不适之处,可以评论区指出来。
坚持学习、坚持写博、坚持分享是咔咔从业以来一直所秉持的信念。希望在偌大互联网中咔咔的文章能带给你一丝丝帮助。我是咔咔,下期见。
以上是ThinkPHP之配置加载代码优化的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具

WebStorm Mac版
好用的JavaScript开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

SublimeText3 Linux新版
SublimeText3 Linux最新版

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。