CodeIgniter核心類,庫類閱讀

作者:燁竹

目錄結(jié)構(gòu)


先介紹目錄結(jié)構(gòu)上面箭頭沒有指向的文件
compat兼容性函數(shù)所在文件夾
具體見:兼容性函數(shù)

CodeIgniter.php框架核心文件
作用參見下圖:


common.php
具體見公共函數(shù)

controller.php
控制器父類
看源碼,里面就兩個(gè)功能
實(shí)現(xiàn)CI可以作為一個(gè)大超級(jí)對(duì)象運(yùn)行
實(shí)現(xiàn)get_instance

Exceptions.php
錯(cuò)誤處理類

hooks.php
鉤子類

log.php
日志處理類

model.php
模型父類

Driver.php
庫類驅(qū)動(dòng)文件

profiler.php
類似debug的調(diào)試工具
用法:Profiler類將顯示基準(zhǔn)測(cè)試結(jié)果

下面通篇引用:http://codeigniter.org.cn/user_guide/libraries/index.html

Benchmark.php 基準(zhǔn)測(cè)試類(程序分析)

一直都是啟用狀態(tài)的基準(zhǔn)測(cè)試類,用于計(jì)算兩個(gè)標(biāo)記點(diǎn)之間的時(shí)間差

作用用法:
顯示總執(zhí)行時(shí)間
顯示內(nèi)存占用

日歷類

使用日歷類可以讓你動(dòng)態(tài)的創(chuàng)建日歷,并且可以使用日歷模板來格式化顯示你的日歷

作用用法
日歷類

cache 緩存驅(qū)動(dòng)器類
可選 PHP 緩存(APC)
基于文件的緩存
Memcached 緩存
WinCache 緩存
Redis 緩存

配置類

配置類用于獲取配置參數(shù),這些參數(shù)可以來自于默認(rèn)的配置文件(application/config/config.php), 也可以來自你自定義的配置文件

用法 :
手工加載
自動(dòng)加載

email類

用法:
發(fā)送 Email

加密類(新版)

絕不要使用這個(gè)類或其他任何加密類來進(jìn)行密碼處理!密碼應(yīng)該是被 哈希 ,你應(yīng)該使用 PHP 自帶的 密碼哈希擴(kuò)展 。
加密類提供了雙向數(shù)據(jù)加密的方式,為了實(shí)現(xiàn)密碼學(xué)意義上的安全,它使用了一些并非在所有系統(tǒng)上都可用的 PHP 的擴(kuò)展, 要使用這個(gè)類,你的系統(tǒng)上必須安裝了下面的擴(kuò)展:
OpenSSL
MCrypt (要支持 MCRYPT_DEV_URANDOM)
只要有一點(diǎn)不滿足,我們就無法為你提供足夠高的安全性

使用:
對(duì)數(shù)據(jù)進(jìn)行加密與解密

文件上傳類

CodeIgniter 的文件上傳類用于上傳文件,你可以設(shè)置參數(shù)限制上傳文件的類型和大小

上傳一個(gè)文件通常涉及以下幾步:
顯示一個(gè)上傳表單,用戶選擇文件并上傳。
當(dāng)提交表單時(shí),文件將被上傳到你指定的目錄。
同時(shí),根據(jù)你設(shè)置的參數(shù)對(duì)文件進(jìn)行校驗(yàn)是否允許上傳。
上傳成功后,向用戶顯示成功消息。

用法:## 參考指南
初始化文件上傳類
參數(shù)設(shè)置
參數(shù)
在配置文件中設(shè)置參數(shù)

表單驗(yàn)證

CodeIgniter 提供了一個(gè)全面的表單驗(yàn)證和數(shù)據(jù)預(yù)處理類可以幫你少寫很多代碼

操作用法
表單驗(yàn)證指南
表單
成功頁面
控制器
試一下!
解釋
設(shè)置驗(yàn)證規(guī)則
使用數(shù)組來設(shè)置驗(yàn)證規(guī)則
級(jí)聯(lián)規(guī)則(Cascading Rules)
預(yù)處理數(shù)據(jù)
重新填充表單
回調(diào):你自己的驗(yàn)證函數(shù)
使用任何可調(diào)用的方法作為驗(yàn)證規(guī)則
設(shè)置錯(cuò)誤信息
翻譯表單域名稱
更改錯(cuò)誤定界符
單獨(dú)顯示錯(cuò)誤
驗(yàn)證數(shù)組(除 $_POST 數(shù)組)
將一系列驗(yàn)證規(guī)則保存到一個(gè)配置文件
如何保存你的規(guī)則
創(chuàng)建規(guī)則集
調(diào)用某組驗(yàn)證規(guī)則
將控制器方法和規(guī)則集關(guān)聯(lián)在一起

FTP類

CodeIgniter 的 FTP 類允許你傳輸文件到遠(yuǎn)程服務(wù)器,也可以對(duì)遠(yuǎn)程文件進(jìn)行移動(dòng)、重命名或刪除操作。 FTP 類還提供了一個(gè) "鏡像" 功能,允許你將你本地的一個(gè)目錄通過 FTP 整個(gè)的同步到遠(yuǎn)程服務(wù)器上

用法:
使用 FTP 類
初始化類
使用示例

圖像處理類

CodeIgniter 的圖像處理類可以使你完成以下的操作:
調(diào)整圖像大小
創(chuàng)建縮略圖
圖像裁剪
圖像旋轉(zhuǎn)
添加圖像水印
可以很好的支持三個(gè)主流的圖像庫:GD/GD2、NetPBM 和 ImageMagick

使用:
添加圖像水印
水印的兩種類型
給圖像添加水印
水印處理參數(shù)

輸入類

輸入類有兩個(gè)用途:
為了安全性,對(duì)輸入數(shù)據(jù)進(jìn)行預(yù)處理
提供了一些輔助方法來獲取輸入數(shù)據(jù)并處理

用法:
對(duì)輸入進(jìn)行過濾
安全性過濾
XSS 過濾
訪問表單數(shù)據(jù)
使用 POST、GET、COOKIE 和 SERVER 數(shù)據(jù)
使用 php://input 流

加載器類

加載器,顧名思義,是用于加載元素的,加載的元素可以是庫(類),視圖文件驅(qū)動(dòng)器 ,輔助函數(shù) , 模型 或其他你自己的文件

用法:
應(yīng)用程序"包"
包的視圖文件

遷移類

遷移是一種非常方便的途徑來組織和管理你的數(shù)據(jù)庫變更,當(dāng)你編寫了一小段 SQL 對(duì)數(shù)據(jù)庫做了修改之后,你就需要告訴其他的開發(fā)者他們也需要運(yùn)行這段 SQL , 而且當(dāng)你將應(yīng)用程序部署到生產(chǎn)環(huán)境時(shí),你還需要記得對(duì)數(shù)據(jù)庫已經(jīng)做了哪些修改, 需要執(zhí)行哪些 SQL

配置文件: application/config/migration.php

用法
遷移文件命令規(guī)則
創(chuàng)建一次遷移
使用范例
遷移參數(shù)
類參考

輸出類

輸出類是個(gè)核心類,它的功能只有一個(gè):發(fā)送 Web 頁面內(nèi)容到請(qǐng)求的瀏覽器。 如果你開啟緩存,它也負(fù)責(zé) 緩存 你的 Web 頁面

這個(gè)類由系統(tǒng)自動(dòng)加載,你無需手工加載

分頁類

CodeIgniter 的分頁類非常容易使用,而且它 100% 可定制,可以通過動(dòng)態(tài)的參數(shù), 也可以通過保存在配置文件中的參數(shù)

用法
自定義分頁
添加封裝標(biāo)簽
自定義第一個(gè)鏈接
自定義最后一個(gè)鏈接
自定義下一頁鏈接
自定義上一頁鏈接
自定義當(dāng)前頁面鏈接
自定義數(shù)字鏈接
隱藏?cái)?shù)字鏈接
給鏈接添加屬性
禁用 "rel" 屬性

模板解析類

模板解析類可以對(duì)你視圖文件中的偽變量進(jìn)行簡(jiǎn)單的替換,它可以解析簡(jiǎn)單的變量和變量標(biāo)簽對(duì)

用法:
使用模板解析類

安全類

安全類包含了一些方法,用于安全的處理輸入數(shù)據(jù),幫助你創(chuàng)建一個(gè)安全的應(yīng)用。

用法
XSS 過濾
跨站請(qǐng)求偽造(CSRF)

Session 類

Session(會(huì)話)類可以讓你保持一個(gè)用戶的 "狀態(tài)" ,并跟蹤他在瀏覽你的網(wǎng)站時(shí)的活動(dòng)。

CodeIgniter 自帶了幾個(gè)存儲(chǔ) session 的驅(qū)動(dòng):

  • 文件(默認(rèn)的,基于文件系統(tǒng))
  • 數(shù)據(jù)庫
  • Redis
  • Memcached

用法
使用 Session 類

HTML表格類

表格類提供了一些方法用于根據(jù)數(shù)據(jù)庫或數(shù)據(jù)庫結(jié)果集自動(dòng)生成HTML的表格。

用法:
使用表格類

引用通告:

引用通告(trackback)是現(xiàn)在WEB2.0的產(chǎn)物,BLOG成為WEB2.0的關(guān)鍵包括TRACKBACK的功能,在BLOG發(fā)表一篇評(píng)論的時(shí)候,在尾部的引用欄輸入對(duì)方文章的引用(TRACKBACK)地址,那么你發(fā)表完文章后,對(duì)方的BLOG就會(huì)自動(dòng)在你所評(píng)論的文章的尾部添加了你的引用信息,所顯示的信息因程序而不同,基本的要素包括了你評(píng)論的標(biāo)題和你的評(píng)論的鏈接,其他人可以很清楚地看到你的引用,并很方便地點(diǎn)擊就可以來看你的文章

用法:
使用引用通告類

排版類

排版類提供幫助您設(shè)置文本格式的功能。

用法:
使用排版類

單元測(cè)試類

單元測(cè)試是一種為你的應(yīng)用程序中的每個(gè)函數(shù)編寫測(cè)試的軟件開發(fā)方法
CodeIgniter 的單元測(cè)試類非常簡(jiǎn)單,由一個(gè)測(cè)試方法和兩個(gè)顯示結(jié)果的方法組成。 它沒打算成為一個(gè)完整的測(cè)試套件,只是提供一個(gè)簡(jiǎn)單的機(jī)制來測(cè)試你的代碼是否 生成了正確的數(shù)據(jù)類型和結(jié)果。

使用
使用單元測(cè)試類庫

URI 類

URI 類用于幫助你從 URI 字符串中獲取信息,如果你使用 URI 路由, 你也可以從路由后的 URI 中獲取信息。
注解
該類由系統(tǒng)自己加載,無需手工加載

用法
類參考

用戶代理類

用戶代理(User Agent)類提供了一些方法來幫助你識(shí)別正在訪問你的站點(diǎn)的瀏覽器、 移動(dòng)設(shè)備或機(jī)器人的信息。另外,你還可以通過它獲取 referrer 信息,以及 支持的語言和字符集信息。

用法
使用用戶代理類
用戶代理的名稱定義application/config/user_agents.php

XML-RPC 與 XML-RPC 服務(wù)器類

CodeIgniter 的 XML-RPC 類允許你向另一個(gè)服務(wù)器發(fā)送請(qǐng)求, 或者建立一個(gè)你自己的 XML-RPC 服務(wù)器來接受請(qǐng)求
XML-RPC是一種在兩臺(tái)計(jì)算機(jī)之間使用 XML 通過互聯(lián)網(wǎng)進(jìn)行通信的簡(jiǎn)單方法。 一臺(tái)計(jì)算機(jī) , 我們稱之為客戶端 , 發(fā)送一個(gè) XML-RPC 請(qǐng)求給另外一臺(tái)計(jì)算機(jī), 我們稱之為服務(wù)器,當(dāng)服務(wù)器收到請(qǐng)求時(shí),對(duì)其進(jìn)行處理然后將結(jié)果返回給客戶端

用法
使用 XML-RPC 類

Zip編碼類

CodeIgniter的Zip編碼類允許你創(chuàng)建Zip壓縮文檔,文檔可以被下載到你的桌面或者保存到某個(gè)文件夾里。

用法
使用Zip編碼類

最后編輯于
?著作權(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)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,597評(píng)論 19 139
  • 內(nèi)聯(lián)結(jié)是inner外聯(lián)結(jié)分為左右 跟著程老哥學(xué)習(xí)下MySQL,看到聯(lián)結(jié)表的時(shí)候還是很懵逼的,我們用案例看看,這幾個(gè)...
    羅羅攀閱讀 1,034評(píng)論 4 3
  • 秋風(fēng)蕭瑟卷落葉, 孤雁南飛話離別。 夜半冷雨愁猶在, 一曲離殤斷心弦。
    姝瑾兒閱讀 481評(píng)論 16 25
  • 學(xué)高為師,身正為范。這是社會(huì)對(duì)老師的要求。你說一句臟話,他們說你不為人師表,你一個(gè)知識(shí)不會(huì),他們說你還是老師呢...
    風(fēng)吹落花閱讀 573評(píng)論 1 0

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