首頁 >php框架 >ThinkPHP >ThinkPHP之如何加載其它類型的配置文件

ThinkPHP之如何加載其它類型的配置文件

咔咔
咔咔原創
2020-10-09 15:22:551670瀏覽

在框架中所有的設定檔類型都是PHP文件,那麼我們要怎麼實現讓其載入其它類型的擴充呢!本文只是作為一個擴展,不建議更改框架源碼。

七、工廠模式載入其它類型的設定檔

在之前看到的loadFile方法中,檔案類型為PHP或yaml程式就打斷了,就不會在去執行後邊的pares方法。

那麼這個parse方法是做什麼的呢!

ThinkPHP之如何加載其它類型的配置文件進入paras這個方法後,首先看註解

接著使用了一個工廠模式去載入think/config/driver下的檔案

ThinkPHP之如何加載其它類型的配置文件進入到factory這個方法後,這塊內容屬於容器的就不過多解釋了。

只需要知道這裡最終會傳回一個實例給paras方法的$object變數

ThinkPHP之如何加載其它類型的配置文件最終還是使用上文中提到的set方法,而內部的object->parse()就是執行傳回物件的內部方法,例如下圖展示三種類型。 ini、json、xm三種類型都存在同樣的方法

ThinkPHP之如何加載其它類型的配置文件這是ini類型,其它兩個的類型也是一毛一樣的,就是會有同樣的方法來實現對應的功能

ThinkPHP之如何加載其它類型的配置文件
在這裡插入圖片描述

簡單梳理一下工廠模式載入不同類型的配置

  • #把對應的類型傳給一個方法
  • #然後這個方法回傳對應的實例
  • 在用這個實例去呼叫類別裡邊的方法
  • 所有實例裡的方法名稱都是一致的

這裡咔咔後期會單獨出一篇文章模仿這個實現另一個功能,導圖會有所有的文章鏈接哦!

在ini.php中看到了一個方法parse_ini_file,其實這個方法根據之前的學習就大概能了解到時把ini類型的設定檔轉為陣列形式。這裡就不做示範了,很簡單哈!

那麼其它兩個種型別都是為了把檔案資料轉為陣列的。

堅持學習、堅持寫博、堅持分享是咔咔從業以來一直所秉持的信念。希望在偌大互聯網中咔咔的文章能帶給你一絲絲幫助。我是喀喀,下期見。

#

以上是ThinkPHP之如何加載其它類型的配置文件的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn