資源描述:
《CI代碼讀取筆記.pdf》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。
1、CI代碼讀取參考1:http://www.cnblogs.com/zhenyu-whu/p/3254173.html一步一步重寫(xiě)CodeIgniter框架參考2:http://h5b.net/codeigniter-error_report-set_error_handler/CodeIgniter的那些坑才考3:http://blog.sina.com.cn/s/blog_75a2f94f01019ii5.htmlCI中的安全類(lèi)Security.php--如何防止csrf和xss攻擊CI的那些事http://www.phpchina.com/archives/view-3
2、8424-1.html++++++++++++++++++++++入口index.php自定義CURRENT_ENV當(dāng)前環(huán)境決定報(bào)警級(jí)別(error_reporting()報(bào)警級(jí)別)ROOT_URL根路徑SELF單一入口文件名index.phpEXT文件后綴.phpBASEPATH系統(tǒng)目錄D:/AppServ/www/caigoufenxiao/system/FCPATHWEB目錄D:AppServwwwcaigoufenxiaowebappSYSDIRsystemAPPPATH../application/ROOTPATH..文件最后引入:require_onc
3、eBASEPATH.'core/CodeIgniter.php';++++++++++++++++++++++文件CodeIgniter.php定義了常量CI_VERSION2.1.4CI_COREfalse//?這個(gè)變量可以拓展CORE=TRUE,會(huì)發(fā)生蝦米?然后引入公用函數(shù)庫(kù):require(BASEPATH.'core/Common.php');判斷是否定義環(huán)境常量,引入常量(主要定義了文件讀寫(xiě)相關(guān)常量)require(APPPATH.'config/'.ENVIRONMENT.'/constants.php');require(APPPATH.'config/con
4、stants.php');自定義錯(cuò)誤處理函數(shù)set_error_handler('_exception_handler');//core/common.php定義了這個(gè)function判斷php版本是否是5.3之前,關(guān)閉魔術(shù)字符if(is_php('5.3')<0){set_magic_quotes_runtime(0);}php.ini配置選項(xiàng):matic_quotes_gpc只針對(duì)http請(qǐng)求如GET/POST/COOKIE有效magic_quotes_runtime只對(duì)exec();文件和數(shù)據(jù)庫(kù)讀取的數(shù)據(jù)有效magic_quotes_sybase只對(duì)sybase數(shù)據(jù)庫(kù)
5、判斷set_time_limit是否存在和safe_mode是否關(guān)閉,重新設(shè)置超時(shí)時(shí)間為300set_time_limit(300);//默認(rèn)值是30秒,并且safe_modeoff才生效//★★開(kāi)始引入計(jì)時(shí)器benchmark,(寫(xiě)入兩個(gè)基準(zhǔn)時(shí)間點(diǎn):1.程序總的執(zhí)行時(shí)間起始點(diǎn);2.載入基本類(lèi)庫(kù)的起始點(diǎn))$BM=&load_class('Benchmark','core');$BM->mark('total_execution_time_start');$BM->mark('loading_time:_base_classes_start');//★★引入鉤子,用來(lái)在不修該
6、核心代碼的前提下,進(jìn)行擴(kuò)展$EXT=&load_class('Hooks','core');$EXT->_call_hook('pre_system');//測(cè)試用鉤子,并沒(méi)有實(shí)際代碼,在系統(tǒng)載入前,返回false//★★引入配置類(lèi)$this->config$CGF=&load_class('Config','core');載入U(xiǎn)TF8語(yǔ)言包$UNI=&load_class('Utf8','core');//★★引入U(xiǎn)RI解析類(lèi)$URI=&load_class('URI','core');//★★引入路由解析類(lèi),然后進(jìn)行重寫(xiě)$RTR=&load_class('Router'
7、,'core');$RTR->_set_routing();如果index.php設(shè)置過(guò)路由數(shù)組,重新解析一遍,覆蓋上一步的路由------體現(xiàn)了路由的優(yōu)先級(jí)$RTR->_set_overrides($routing);//★★引入輸出處理類(lèi)$OUT=&load_class('Output','core');緩存處理,判斷是否有緩存鉤子cache_override,沒(méi)有則直接用Output類(lèi)的_display_cache方法$EXT->_call_hook('cache_override')$OUT->_displ