站長資訊網
最全最豐富的資訊網站

記錄一次優化thinkphp框架源碼的過程

?

在之前閱讀到框架加載源碼的過程中,看框架源碼存在以下問題,于是咔咔就手動的進行了一次簡單的優化,可以看看思路哈!不建議大家直接去做更改哈!

?

thinkphp/library/think/Config.php中方法loadFile這里看起來是不是有點不太優雅了。

既然在方法最后使用parse方法,也就是之前提到的工廠模式加載其它類型的配置文件。

那么為何不讓這個工廠模式也加載PHP和yaml類型的配置文件。

記錄一次優化thinkphp框架源碼的過程此時就需要在thinkphp/library/think/config/driver這個目錄建立php文件和yaml文件了。

首先建立一個php文件。

并且仿照其它三個類型文件,在php文件類型中只需要判斷是否為文件,然后把文件引入進來即可。

在框架中PHP類型的配置文件都是數組形式的,所以在Php.php文件中parse方法直接返回config屬性即可。

記錄一次優化thinkphp框架源碼的過程開始開心的測試吧!之前在env的文件中配置了CONFIG_EXT這個值為yaml。

也就是說讀取config目錄下的配置文件時,只能讀取擴展為yaml類型的文件。

所以需要先把這個值給改回來,等后面把yaml類型的工廠類寫好之后就可以使用了。

為了測試方便在config目錄下添加一個新的配置

記錄一次優化thinkphp框架源碼的過程然后把config類中的lodeFile方法中判斷php和yaml類型的代碼注釋掉

記錄一次優化thinkphp框架源碼的過程
在這里插入圖片描述

在控制器讀取config/app.php配置

記錄一次優化thinkphp框架源碼的過程打印結果

打印出來的結果沒有任何瑕疵,也就說我們進行簡單優化的代碼并沒有不適之處。記錄一次優化thinkphp框架源碼的過程至于yaml也是一樣的道理,只需要把最終的數據轉為數組返回就行了。

記錄一次優化thinkphp框架源碼的過程

贊(0)
分享到: 更多 (0)
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
国产精品亚洲w码日韩中文| 国产精品成人久久久久| 奇米精品一区二区三区在线观看 | 中日欧洲精品视频在线| 久久久无码精品亚洲日韩按摩 | 无码人妻精品一区二区三区99仓本 | 亚洲国产91精品无码专区| 国产伦精品一区二区三区精品| 精品亚洲av无码一区二区柚蜜| 国产精品久久久久天天影视| 久久国产精品99国产精| 午夜影视日本亚洲欧洲精品一区| 国产精品亚洲一区二区三区在线 | 精品久久久久久久久久中文字幕 | 99re热视频精品首页| 久久精品国产这里是免费| 黑人大战亚洲人精品一区| 黑人无码精品又粗又大又长| 人成精品视频三区二区一区| 日韩午夜伦y4480私人影院| 亚洲中文字幕无码日韩| 国产91精品久久久久久久| 国产精品成人无码久久久| 国产精品视频久久久久| 国产麻豆剧传媒精品国产免费| 精品伊人久久大香线蕉网站| 国产Av一区二区精品久久| 国语自产精品视频在线第| 精品欧洲videos| 国产精品亚洲天堂| 国产成人精品综合| 日韩精品一区二区午夜成人版 | 91视频精品全国免费观看| 久久久久亚洲精品天堂久久久久久| 精品国产91久久久久久久a | 孩交精品xxxx视频视频| 香蕉久久国产精品免| 国产精品成人99一区无码| 永久免费无码日韩视频| 亚洲欧洲日韩不卡| 日韩aa在线观看|