亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長(zhǎng)資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    記錄一次優(yōu)化thinkphp框架源碼的過(guò)程

    ?

    在之前閱讀到框架加載源碼的過(guò)程中,看框架源碼存在以下問(wèn)題,于是咔咔就手動(dòng)的進(jìn)行了一次簡(jiǎn)單的優(yōu)化,可以看看思路哈!不建議大家直接去做更改哈!

    ?

    thinkphp/library/think/Config.php中方法loadFile這里看起來(lái)是不是有點(diǎn)不太優(yōu)雅了。

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

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

    記錄一次優(yōu)化thinkphp框架源碼的過(guò)程此時(shí)就需要在thinkphp/library/think/config/driver這個(gè)目錄建立php文件和yaml文件了。

    首先建立一個(gè)php文件。

    并且仿照其它三個(gè)類(lèi)型文件,在php文件類(lèi)型中只需要判斷是否為文件,然后把文件引入進(jìn)來(lái)即可。

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

    記錄一次優(yōu)化thinkphp框架源碼的過(guò)程開(kāi)始開(kāi)心的測(cè)試吧!之前在env的文件中配置了CONFIG_EXT這個(gè)值為yaml。

    也就是說(shuō)讀取config目錄下的配置文件時(shí),只能讀取擴(kuò)展為yaml類(lèi)型的文件。

    所以需要先把這個(gè)值給改回來(lái),等后面把yaml類(lèi)型的工廠類(lèi)寫(xiě)好之后就可以使用了。

    為了測(cè)試方便在config目錄下添加一個(gè)新的配置

    記錄一次優(yōu)化thinkphp框架源碼的過(guò)程然后把config類(lèi)中的lodeFile方法中判斷php和yaml類(lèi)型的代碼注釋掉

    記錄一次優(yōu)化thinkphp框架源碼的過(guò)程
    在這里插入圖片描述

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

    記錄一次優(yōu)化thinkphp框架源碼的過(guò)程打印結(jié)果

    打印出來(lái)的結(jié)果沒(méi)有任何瑕疵,也就說(shuō)我們進(jìn)行簡(jiǎn)單優(yōu)化的代碼并沒(méi)有不適之處。記錄一次優(yōu)化thinkphp框架源碼的過(guò)程至于yaml也是一樣的道理,只需要把最終的數(shù)據(jù)轉(zhuǎn)為數(shù)組返回就行了。

    記錄一次優(yōu)化thinkphp框架源碼的過(guò)程

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)