ci--frame list analyse

**CI目錄結(jié)構(gòu)
** CI主要組成部分為,application(應(yīng)用文件夾)、system(系統(tǒng)文件夾)和index.php入口文件。

應(yīng)用文件夾中主要是存放控制器、模型和視圖等,系統(tǒng)文件夾中主要是存放組成CI的核心文件的,index.php入口文件是一個(gè)單一入口文件,所謂單一文件是指在一個(gè)網(wǎng)站(應(yīng)用程序)中,所有的請(qǐng)求都是指向的這么一個(gè)文件,由它負(fù)責(zé)接收并處理URL中的控制器和方法。換句話說(shuō), 它調(diào)用一個(gè) '控制器', 然后返回一個(gè)'視圖'。

application
cache 第一次安裝時(shí)為空,如果你打開(kāi)緩存設(shè)置,這個(gè)目錄存放緩存數(shù)據(jù)
config 存放配置文件,包含網(wǎng)站的基本配置信息
controllers 存放你項(xiàng)目的控制器目錄
core 該目錄可以擴(kuò)展系統(tǒng)的核心文件
errors 包含出錯(cuò)信息頁(yè),你不必修改這個(gè)目錄
hooks 首次安裝時(shí)為空,用來(lái)存放你創(chuàng)建的鉤子。鉤子是 用來(lái)裝載其它文件的控制方法
helpers 輔助函數(shù),你可以對(duì)系統(tǒng)的輔助函數(shù)進(jìn)行擴(kuò)展
language 存放你本國(guó)語(yǔ)言的文件目錄
libraries 類(lèi)庫(kù),你可以創(chuàng)建自己的類(lèi)庫(kù)
logs 如果你設(shè)置打開(kāi)了系統(tǒng)的錯(cuò)誤日志,日志文件就默認(rèn)保存在這個(gè)目錄
models 存放你項(xiàng)目的模型目錄
views 存放視圖的模板目錄

**system : **
core 存放系統(tǒng)核心文件
database CI框架的數(shù)據(jù)庫(kù)類(lèi)的類(lèi)庫(kù)文件
fonts 沒(méi)有在用戶手冊(cè)中介紹,存放水印圖像使用的字體
helpers 輔助函數(shù),你可以對(duì)系統(tǒng)的輔助函數(shù)進(jìn)行擴(kuò)展
language 存放英語(yǔ)的文件目錄
libraries 存放一些類(lèi)庫(kù)的目錄,比如SESSION類(lèi)、分頁(yè)類(lèi)、圖像類(lèi)等

應(yīng)用文件夾(application)中,最重要的文件夾是config,該文件夾內(nèi)有兩個(gè)需要關(guān)注的文件:config.php 和 database.php,其次是controllers、models和views文件夾,分別存儲(chǔ)你網(wǎng)站中的控制器、模型和視圖。

URL處理機(jī)制

假如URL網(wǎng)址為:

http://yoursite/index.php/control/func/param1/param2/...

http://www.yoursite.com

定位你網(wǎng)站的基本URL

/index.php
定位CI路由器并讀取URL的其它部分,分析后定們到相關(guān)網(wǎng)頁(yè)

/control
CI將調(diào)用的控制器的名稱(如果沒(méi)有設(shè)置控制器名稱,CI將調(diào)用你在config文件中設(shè)置的默認(rèn)控制器)

/func
CI將調(diào)用的函數(shù)的名稱,位于所調(diào)用的控制器內(nèi)。(如果不存在該函數(shù),默認(rèn)調(diào)用的是index函數(shù),除非你使用_remap)

/param1
CI把這個(gè)作為傳遞給函數(shù)的變量

如果還有/param2/...
CI把更多的參數(shù)作為變量傳遞給函數(shù)

所以上面網(wǎng)址可以理解為:

http://localhost/index.php/控制器名/方法名/方法的參數(shù)1/方法的參數(shù)2/...

|-----system                框架程序目錄  
    |-----core          框架的核心程序  
        |-----CodeIgniter.php   引導(dǎo)性文件  
        |-----Common.php    加載基類(lèi)庫(kù)的公共函數(shù)  
        |-----Controller.php    基控制器類(lèi)文件:CI_Controller  
        |-----Model.php     基模型類(lèi)文件:CI_Model  
        |-----Config.php    配置類(lèi)文件:CI_Config  
        |-----Input.php     輸入類(lèi)文件:CI_Input  
        |-----Output.php    輸出類(lèi)文件:CI_Output  
        |-----URL.php       URL類(lèi)文件:CI_URl  
        |-----Router.php    路由類(lèi)文件:CI_Router  
        |-----Loader.php    加載類(lèi)文件:CI_Loader  
    |-----helpers           輔助函數(shù)  
        |-----url_helper.php    url相關(guān)的輔助函數(shù),如:創(chuàng)建url的輔助函數(shù)  
        |-----captcha_helper.php創(chuàng)建圖形驗(yàn)證碼的輔助函數(shù)  
    |-----libraries         通用類(lèi)庫(kù)  
        |-----Pagination.php    通用分頁(yè)類(lèi)庫(kù)  
        |-----Upload.php    通用文件上傳類(lèi)庫(kù)  
        |-----Image_lib.php 通用圖像處理類(lèi)庫(kù)  
        |-----Session.php   通用session類(lèi)庫(kù)  
    |-----language          語(yǔ)言包  
    |-----database          數(shù)據(jù)庫(kù)操作相關(guān)的程序  
        |-----DB_active_rec.php 快捷操作類(lèi)文件(ActiveRecord)  
    |-----fonts         字庫(kù)  
      
|-----application           項(xiàng)目目錄  
    |-----core          項(xiàng)目的核心程序  
    |-----helpers           項(xiàng)目的輔助函數(shù)  
    |-----libraries         通用類(lèi)庫(kù)  
    |-----language          語(yǔ)言包  
    |-----config            項(xiàng)目相關(guān)的配置  
        |-----config.php    項(xiàng)目相關(guān)的配置文件     
        |-----database.php  數(shù)據(jù)庫(kù)相關(guān)的配置文件  
        |-----autoload.php  設(shè)置自動(dòng)加載類(lèi)庫(kù)的配置文件  
        |-----constants.php 常量配置文件  
        |-----routes.php    路由配置文件  
    |-----controllers       控制器目錄  
        |-----welcome.php   控制器文件,繼承CI_Controller  
    |-----models            模型目錄  
        |-----welcome_model.php 模型文件,繼承CI_Model  
    |-----views         視圖目錄  
        |-----welcome.php   視圖模板文件,默認(rèn)后綴名為.php  
    |-----cache         存放數(shù)據(jù)或模板的緩存文件  
    |-----errors            錯(cuò)誤提示模板  
    |-----hooks         鉤子,在不修改系統(tǒng)核心文件的基礎(chǔ)上擴(kuò)展系統(tǒng)功能  
    |-----third_party       第三方庫(kù)  
    |-----logs          日志  
  
|-----index.php             入口文件  
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容