5
A
回答
8
我相信symfony1.2版本做到這一點的正確方法如下:
sfContext::switchTo('frontend'); //switch to the environment you wish to clear
sfContext::getInstance()->getViewCacheManager()->getCache()->clean(sfCache::ALL);
sfContext::switchTo('backend'); //switch back to the environment you started from
0
我不認爲沒有「乾淨」的方式來完成這項工作,因爲不同的應用程序在symfony中被視爲相當分離的環境。 顯然,工作可以在較少或較髒的方式進行,選擇用自己的方式刪除緩存/目錄的任何文件,運行phing任務明確的緩存(CC)等等
可以只需運行rm -rf cache/*,但可能會破壞某些客戶端請求。 比較簡單的事情可能是通過passthru()或exec()
4
這對我的作品來運行symfony的CC。它會從指定目錄中的所有緩存文件:
$cache_dir = sfConfig::get('sf_cache_dir').'/'.$app.'/'.$env.'/';
$cache = new sfFileCache(array('cache_dir' => $cache_dir));
$cache->clean();
0
可以sfTask的創建實例,像這樣(在SF 1.2)運行:
$task = new sfCacheClearTask(sfContext::getInstance()->getEventDispatcher(), new sfFormatter());
$arguments = array();
// type can be one of: i18n, routing, template, module, config
$options = array(
'frontend' => 'app',
'routing' => 'type',
'prod' => 'env',
);
$task->run($arguments, $options);
對於所有可能的參數和選項看源代碼適當sfTask的...
1
如果有人正在尋找清除一個緩存項目(一頁):
sfContext::switchTo('frontend');
sfContext::getInstance()->getViewCacheManager()->remove("module/action?¶m1=value1¶m2=value2","THE-DOMAIN-OF-YOUR-FRONTEND-APPLICATION-IF-U-USE-IT-IN-CACHE-KEYS");
sfContext::switchTo('backend');
相關問題
- 1. 如何清除Android中另一個應用程序的緩存?
- 2. 清除另一個應用程序緩存
- 3. ASP.NET MVC3 - 從另一個應用程序清除緩存(子域)
- 4. symfony禁用緩存清除
- 5. Android清除應用程序緩存清除提供程序也
- 6. XBAP從應用程序清除緩存
- 7. Composer.phar Symfony清除緩存
- 8. symfony 1.4清除緩存
- 9. 清除應用程序緩存清除徽章數
- 10. 如何從另一個在棉花糖的Android應用程序清除其他應用程序緩存?
- 11. 無法清除與緩步Symfony緩存
- 12. HTML5應用程序清單不清除緩存清單更改
- 13. 清除應用程序的整個緩存
- 14. 我的HTML5應用程序緩存清單是緩存一切
- 15. Symfony清除緩存內存限制
- 16. 清除IIS上的Symfony緩存
- 17. Symfony的2.8清除緩存和超時
- 18. 通用Windows應用程序Webview內存泄漏 - 清除緩存
- 19. Symfony 2緩存清除問題
- 20. Symfony 3,linux:如何清除緩存?
- 21. 部署後Symfony清除緩存組件
- 22. 清除symfony緩存不工作
- 23. 讓Symfony清除緩存時間
- 24. 清除無法使用.NET下載的應用程序緩存?
- 25. 清除應用程序的緩存而無需強制關閉應用程序
- 26. 清除應用程序上的絕對緩存關閉Ipad應用程序
- 27. 清除所有安裝的應用程序的緩存
- 28. 清除來自另一個應用程序的通知
- 29. 更新應用程序緩存清單
- 30. 應用程序緩存:需求清單?