CI主要組成部分為,application(應用文件夾)、system(系統文件夾)和index.php入口文件。
應用文件夾中主要是存放控制器、模型和視圖等,系統文件夾中主要是存放組成CI的核心文件的,index.php入口文件是一個單一入口文件,所謂單一文 件是指在一個網站(應用程序)中,所有的請求都是指向的這么一個文件,由它負責接收並處理URL中的控制器和方法。換句話說, 它調用一個 '控制器', 然后返回一個'視圖'。
application :
cache 第一次安裝時為空,如果你打開緩存設置,這個目錄存放緩存數據
config 存放配置文件,包含網站的基本配置信息
controllers 存放你項目的控制器目錄
core 該目錄可以擴展系統的核心文件
errors 包含出錯信息頁,你不必修改這個目錄
hooks 首次安裝時為空,用來存放你創建的鈎子。鈎子是 用來裝載其它文件的控制方法
helpers 輔助函數,你可以對系統的輔助函數進行擴展
language 存放你本國語言的文件目錄
libraries 類庫,你可以創建自己的類庫
logs 如果你設置打開了系統的錯誤日志,日志文件就默認保存在這個目錄
models 存放你項目的模型目錄
views 存放視圖的模板目錄
system :
core 存放系統核心文件
database CI框架的數據庫類的類庫文件
fonts 沒有在用戶手冊中介紹,存放水印圖像使用的字體
helpers 輔助函數,你可以對系統的輔助函數進行擴展
language 存放英語的文件目錄
libraries 存放一些類庫的目錄,比如SESSION類、分頁類、圖像類等
應用文件夾(application)中,最重要的文件夾是config,該文件夾內有兩個需要關注的文件:config.php 和 database.php,其次是controllers、models和views文件夾,分別存儲你網站中的控制器、模型和視圖。
URL處理機制
假如URL網址為:http://yoursite/index.php/control/func/param1/param2/...
http://www.yoursite.com
定位你網站的基本URL
/index.php
定位CI路由器並讀取URL的其它部分,分析后定們到相關網頁
/control
CI將調用的控制器的名稱(如果沒有設置控制器名稱,CI將調用你在config文件中設置的默認控制器)
/func
CI將調用的函數的名稱,位於所調用的控制器內。(如果不存在該函數,默認調用的是index函數,除非你使用_remap)
/param1
CI把這個作為傳遞給函數的變量
如果還有
/param2/...
CI把更多的參數作為變量傳遞給函數
所以上面網址可以理解為:
http://localhost/index.php/控制器名/方法名/方法的參數1/方法的參數2/...