本文主要針對Config的原始碼進行深度解析,主要針對config檔案裡邊的程式碼進行解析,一步一步的給大家註解好,可以更好的看清楚程式碼的執行過程。
經過先前的程式碼執行流程解析後,最後一步就會來到config的文件,接下來就會對load方法重點做介紹。
緊接著就需要來到thinkphp/library/think/Config.php
這個檔案了,在app檔案最後呼叫了config類別中的load。
一起來看看都經歷了什麼
在load這個方法中,流程的最終走向會到loadFile
這個方法中,至於elseif的程式碼為什麼不會走,或者說這段程式碼就是多餘的。
因為Yaconf安裝後在PHP啟動後就會直接去載入對應的設定檔。
如果你對yaconf不了解請看之前的文章
來到loadFile這個檔案後
我們都知道在ThinkPHP框架中,config目錄下的所有檔案都是PHP類型的
所以在判斷了類型後就直接進入到set裡邊進行資料的處理
include直接引入的就是config目錄下的配置文件,並且所有的配置文件都是直接return返回一個數組
在set方法中,這塊程式碼就是核心了
一直循環合併數組,最後把所有的設定資訊都回給了config這個屬性
截止到這裡config目錄下的所有設定就載入完成了。
以上就是config的載入流程,其實當你閱讀完之後就感覺沒有那麼的難,就是程式設計技巧和想法。
而我們閱讀原始碼不是看它程式碼怎麼寫的,是學習的它的編碼思想,最終落地到我們自己的專案中。
堅持學習、堅持寫博、堅持分享是咔咔從業以來一直所秉持的信念。希望在偌大互聯網中咔咔的文章能帶給你一絲絲幫助。我是喀喀,下期見。
以上是ThinkPHP之配置源碼深度解析的詳細內容。更多資訊請關注PHP中文網其他相關文章!