每個應用程式都包含許多位於不同位置的類。該框架提供了用於核心功能的類。您的應用程式將具有許多庫,模型和其他實體,以使其正常執行。您可能有專案正在使用的第三方類。跟蹤每個檔案的位置,然後將該位置硬編碼成一系列檔案,這requires()
是一件非常麻煩的事情,而且容易出錯。這就是自動裝帶器的用武之地。
codeigniter提供了非常靈活的自動載入器,只需很少的配置即可使用。它可以定位各個非命名空間的類,遵循psr4自動載入目錄結構的命名空間的類, 甚至可以嘗試在通用目錄(如controllers,models等)中定位類。
為了提高效能,核心codeigniter元件已新增到類對映中。
自動裝帶器本身可以很好地工作,但是如果需要,也可以與其他自動裝帶器(例如 composer)一起使用,甚至可以與您自己的自定義自動裝帶器一起使用。因為它們都是通過spl_autoload_register註冊的 ,所以它們按順序工作,不會互相干擾。
自動載入器始終處於活動狀態,並spl_autoload_register()
在框架執行開始時進行註冊。
建議的組織類的方法是為應用程式的檔案建立乙個或多個命名空間。這對於任何與業務邏輯相關的類,實體類等都是最重要的。psr4
配置檔案中的陣列允許您將命名空間對映到可以在以下目錄中找到這些類的目錄:
$psr4 = [
。該值是可在其中找到類的目錄的位置。它們應帶有斜槓。
設定下設定新的命名空間值來更改此命名空間:
您將需要修改所有引用當前命名空間的現有檔案。
重要配置檔案在命名空間中config
您期望的那樣。即使應用程式命名空間已更改,這也使核心系統檔案始終能夠找到它們。
該類對映被codeigniter廣泛使用,通過不通過額外的file_exists()
$classmap = [
每行的鍵是您要查詢的類的名稱。該值是定位它的路徑。
沒有用於舊版支援的配置選項。
CodeIgniter 4 的內容協商
當我關注到 http 層的時候,發現很多 cier 對內容協商還不是很了解,下面我們一起來 一下什麼是內容協商,以及如何在即將到來的 codeigniter 4 中使用他。簡而言之,內容協商是指客戶端和伺服器端就響應的資源內容進行交涉,然後提供給客戶端最為適合的資源。內容協商會以響應資源的語言 型別...
CodeIgniter4 管理多個應用
預設情況下,假定您僅打算使用codeigniter來管理乙個應用程式,該應用程式將在您的應用程式目錄中構建。但是,可以有多個應用程式共享乙個codeigniter安裝,甚至可以重新命名或重定位應用程式目錄。變數設定其名稱,就可以這樣做 可以將應用程式目錄移動到伺服器上與web根目錄不同的位置。為此,...
4 演算法概述
公式 資料結構 演算法 程式 一 演算法的特性 1 確定性 演算法中每個步驟應當是確定的,而不能是含糊的 2 可行性 有效性 演算法中每乙個步驟應當有效的執行 3 有零個或多個輸入 4 有乙個或多個輸出 5 有窮性 乙個演算法應包含有限的操作步驟,而不是無限的。二 演算法的表示 用流程圖表示時三種基...