2013-02-27 23 views
0

確定這裏是鏈接到緩存庫中寫道:https://github.com/philsturgeon/codeigniter-cache菲爾鱘魚的緩存庫

不管怎麼說,他的資料是絕對..含糊,沒有幫助的。我知道這是自我解釋..對一個點。

$this->cache->model('blog_m', 'getPosts', array($category_id, 'live'), 120); // keep for 2 minutes 

第3個參數是什麼? ,是什麼造成的緩存或這是什麼創建一個緩存文件:

$this->cache->write($data, 'cached-name'); 

如果是這樣,到底是什麼$數據假設持股待的價值?整體查詢orrr ... ?? 如果任何人都可以解釋如何創建一個緩存文件..基本上我想緩存查詢,選擇一堆新聞張貼..每次一個新的新職位創建,刪除緩存並recache它如此它顯示新的新聞發佈..

回答

0

該文件似乎很清楚。不管怎麼說,我會試着解釋它在更好的條件:

// cached model call 
$this->cache->model('blog_m', 'getPosts', array($category_id, 'live'), 120); // keep for 2 minutes 

這就要求對模型blog_m方法getPosts並緩存120秒的結果。如果您在接下來的2分鐘內再次進行相同的調用,它將返回緩存的結果,否則它將從數據庫獲取數據並更新緩存。對於模型中的方法,您會非常頻繁地調用它。

如果你想手動從緩存中添加和獲取數據,然後使用:

// cached array or object 
$this->cache->write($data, 'cached-name'); 
$data = $this->cache->get('cached-name'); 

$data將持有任何你希望緩存。如果你希望緩存用戶的電子郵件,例如,這裏是你將如何緩存拿去

$email = '[email protected]'; 
$this->cache->write($email, 'user-email'); 
// to fetch 
$user_email = $this->cache->get('user-email'); 
+0

好的事情是..我問第三個參數是什麼。我知道緩存的作用和涉及的內容。 ARRAY是我沒有得到..模型()函數中的第三個參數..我將什麼數組放入參數? – Peanut 2013-02-28 03:24:40

+0

該數組是您想要傳遞給在模型上調用的方法的參數。 – xbonez 2013-02-28 03:27:50

+0

Ohhhhhhhhhh WOW所以不要調用模型,比如$ this-> news-> get_news($ id),你可以做$ this-> cache-> model('news_model','get_news',array($ id), 120);或者任何想要緩存它的秒數? – Peanut 2013-02-28 03:33:39