CodeIgniter 網(wǎng)頁緩存

2018-07-21 15:38 更新

網(wǎng)頁緩存

CodeIgniter 可以讓你通過緩存頁面來達(dá)到更好的性能。

盡管 CodeIgniter 已經(jīng)相當(dāng)高效了,但是網(wǎng)頁中的動態(tài)內(nèi)容、主機(jī)的內(nèi)存 CPU 和數(shù)據(jù)庫讀取速度等因素直接影響了網(wǎng)頁的加載速度。 依靠網(wǎng)頁緩存, 你的網(wǎng)頁可以達(dá)到近乎靜態(tài)網(wǎng)頁的加載速度,因為程序的輸出結(jié)果 已經(jīng)保存下來了。

緩存是如何工作的?

可以針對到每個獨立的頁面進(jìn)行緩存,并且你可以設(shè)置每個頁面緩存的更新時間。 當(dāng)頁面第一次加載時,緩存將被寫入到 application/cache 目錄下的文件中去。 之后請求這個頁面時,就可以直接從緩存文件中讀取內(nèi)容并輸出到用戶的瀏覽器。 如果緩存過期,會在輸出之前被刪除并重新刷新。

開啟緩存

將下面的代碼放到任何一個控制器的方法內(nèi),你就可以開啟緩存了:

$this->output->cache($n);

其中 $n 是緩存更新的時間(單位分鐘)。

上面的代碼可以放在方法的任何位置,它出現(xiàn)的順序?qū)彺鏇]有影響, 所以你可以把它放到任何你認(rèn)為合理的地方。一旦該代碼被放在方法內(nèi), 你的頁面就開始被緩存了。

重要

由于 CodeIgniter 存儲緩存的方式,只有通過 view 輸出的頁面才能緩存。

重要

如果你修改了可能影響頁面輸出的配置,你需要手工刪除掉 你的緩存文件。

注解

在寫入緩存文件之前,你需要把 application/cache/ 目錄的權(quán)限 設(shè)置為可寫。

刪除緩存

如果你不再需要緩存某個頁面,你可以刪除掉該頁面上的緩存代碼, 這樣它在過期之后就不會刷新了。

注解

刪除緩存代碼之后并不是立即生效,必須等到緩存過期才會生效。

如果你需要手工刪除緩存,你可以使用 delete_cache() 方法:

// Deletes cache for the currently requested URI
$this->output->delete_cache();

// Deletes cache for /foo/bar
$this->output->delete_cache('/foo/bar');
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號