W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
CodeIgniter 可以讓你通過緩存頁(yè)面來(lái)達(dá)到更好的性能。
盡管 CodeIgniter 已經(jīng)相當(dāng)高效了,但是網(wǎng)頁(yè)中的動(dòng)態(tài)內(nèi)容、主機(jī)的內(nèi)存 CPU 和數(shù)據(jù)庫(kù)讀取速度等因素直接影響了網(wǎng)頁(yè)的加載速度。 依靠網(wǎng)頁(yè)緩存, 你的網(wǎng)頁(yè)可以達(dá)到近乎靜態(tài)網(wǎng)頁(yè)的加載速度,因?yàn)槌绦虻妮敵鼋Y(jié)果 已經(jīng)保存下來(lái)了。
可以針對(duì)到每個(gè)獨(dú)立的頁(yè)面進(jìn)行緩存,并且你可以設(shè)置每個(gè)頁(yè)面緩存的更新時(shí)間。 當(dāng)頁(yè)面第一次加載時(shí),緩存將被寫入到 application/cache 目錄下的文件中去。 之后請(qǐng)求這個(gè)頁(yè)面時(shí),就可以直接從緩存文件中讀取內(nèi)容并輸出到用戶的瀏覽器。 如果緩存過期,會(huì)在輸出之前被刪除并重新刷新。
將下面的代碼放到任何一個(gè)控制器的方法內(nèi),你就可以開啟緩存了:
$this->output->cache($n);
其中 $n 是緩存更新的時(shí)間(單位分鐘)。
上面的代碼可以放在方法的任何位置,它出現(xiàn)的順序?qū)彺鏇]有影響, 所以你可以把它放到任何你認(rèn)為合理的地方。一旦該代碼被放在方法內(nèi), 你的頁(yè)面就開始被緩存了。
重要
由于 CodeIgniter 存儲(chǔ)緩存的方式,只有通過 view 輸出的頁(yè)面才能緩存。
重要
如果你修改了可能影響頁(yè)面輸出的配置,你需要手工刪除掉 你的緩存文件。
注解
在寫入緩存文件之前,你需要把 application/cache/ 目錄的權(quán)限 設(shè)置為可寫。
如果你不再需要緩存某個(gè)頁(yè)面,你可以刪除掉該頁(yè)面上的緩存代碼, 這樣它在過期之后就不會(huì)刷新了。
注解
刪除緩存代碼之后并不是立即生效,必須等到緩存過期才會(huì)生效。
如果你需要手工刪除緩存,你可以使用 delete_cache() 方法:
// Deletes cache for the currently requested URI
$this->output->delete_cache();
// Deletes cache for /foo/bar
$this->output->delete_cache('/foo/bar');
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: