學習容器原始碼之前必須要學會另外一個設計模式註冊樹模式,這種設計模式也是容器的一個核心了。
#為什麼在這裡說這個註冊樹模式,因為在框架中註冊樹模式就是一個主導位置,所以必須去了解它!
那什麼是註冊樹模呢!
這樣說的話肯定也不能更好的理解,接下來喀喀帶大家來看一個簡單的案例來簡單的了解一下。
一個註冊樹模式需要的東西就是四個,註冊樹的池子,將物件掛載到註冊池裡,從註冊池取得對象,從註冊池卸載物件。
如下圖是咔咔寫的一個簡單的註冊樹模式。
程式碼如果看不懂的就需要去補補基礎了哈!
接下來在到同一目錄建立一個TestTree檔案
來到控制器測試寫的註冊樹模式是否有問題
在做測試的時候一定要注意命名空間問題哈!這裡的kaka目錄是之前在類別的自動載入哪裡配置的,如有不會的可以去第一期文章查看。
這裡就等於先把TestTree這個類別實例化出來
然後使用註冊樹模式把這個實例註冊到object樹池子中
最後使用get方式將這個類別獲取出來就可以直接呼叫TestTree中的方法了。
最後看一下最終列印結果,結果就是TestTree類別中getTreeContent方法的回傳值。
註冊樹模式就是以上喀喀說明的這些內容,就是不去針對原始碼學習,這些內容也是我們必須去學會使用的。
堅持學習、堅持寫博、堅持分享是咔咔從業以來一直所秉持的信念。希望在偌大互聯網中咔咔的文章能帶給你一絲絲幫助。我是喀喀,下期見。
以上是ThinkPHP容器之註冊樹模式的詳細內容。更多資訊請關注PHP中文網其他相關文章!