2009-06-29 61 views
6

我想在CakePHP中使用cache。我如何使用它?如何在CakePHP中使用緩存?

+3

當我第一次看到這個,我錯誤的標題爲「你怎麼在cakephp中使用蛋糕」:) – 2009-07-01 21:16:52

+5

當問一個ge像這樣的一個常見問題是首先閱讀文檔,然後如果你仍然有理解上的問題,說明你不瞭解的內容或者你的應用程序的代碼示例不符合預期,否則你只需鏈接到手冊。 – cp3 2009-11-12 19:01:41

回答

3

在手動(1.2)的高速緩存文件: http://book.cakephp.org/view/213/Cache

我會RECOM修補你在開發時禁用緩存;你會發現(希望不是像我這樣的困難方式)你的模型和觀點沒有像預期的那樣改變。

0

檢出/app/config/core.php文件。

6
if(!($cachedPosts = Cache::read('cached_posts'))) { 
    $cachedPosts = $this->Post->find('all'); 
    Cache::write('cached_posts', $cachedPosts); 
} 

在這個代碼示例中,您看看是否有數據緩存 - 如果沒有,請從數據庫中檢索它並將其寫入緩存。在下一個請求中,數據將來自緩存,而不是來自數據庫。

2

使用緩存之前,我們必須檢查啓用緩存或

應用程序/配置/ core.php中disabaled。

我們不得不取消註釋core.php中此行

//Configure::write('Cache.disable', true); 

之後,我們使用

$varible = Cache::read('variable'); 
Cache::write('posts', $posts); 
Cache::delete(); 
0

在CakePHP的模型級還提供了基於默認的文件緩存...

然後還可以爲任何可以使用的應用程序維護手動緩存

Cache::set(array('duration' => '+100 days')); 
Cache::write(file_path); 

類型的功能,以保持基於文件的緩存

對於內存緩存或者你可以採取以下鏈接作爲參考任何其他概念: