2015-12-16 44 views
0

有沒有辦法在我的一個extbase擴展中生成的數據使用typo3緩存?我有一個腳本來生成導航,這很複雜,但不應該改變太多,所以在得到結果後,我真的很想用typo3來存儲它(當有人點擊「flush all caches」按鈕時它也應該被刷新)。使用TYPO3緩存來存儲值

這可能嗎?如果是這樣 - 如何?

+1

是的,你可以使用緩存框架。這裏是文檔:https://docs.typo3.org/typo3cms/CoreApiReference/CachingFramework/Index.html – Jost

回答

0

TYPO3爲這些任務提供了一個緩存框架。

的文檔可以在https://docs.typo3.org/typo3cms/CoreApiReference/CachingFramework/Index.html

發現這裏是一個小例子可以用來作爲你的周圍產生的包裝:

public function generateMenu(array $pageUids) 
{ 
    $cache = GeneralUtility::makeInstance('TYPO3\\CMS\\Core\\Cache\\CacheManager') 
     ->getCache('fashionesta_newsletter'); 
    $cacheIdentifier = md5(implode($pageUids)); 

    $menu = $cache->get($cacheIdentifier); 
    if($menu !== false) { 
     return $menu; 
    } 

    // Generation logic 

    $cache->set($cacheIdentifier, $menu, array(), 60 * 5); 
    return $menu; 
}