我需要在执行命令时(new sfAPCCache())->clean()
添加一个简单的调用。apc_clear_cache()
./symfony cc
任何人都知道如何实现这一目标?我应该在什么时候编辑我的 symfony 应用程序,或者我应该如何注册这个额外的行为?
我需要在执行命令时(new sfAPCCache())->clean()
添加一个简单的调用。apc_clear_cache()
./symfony cc
任何人都知道如何实现这一目标?我应该在什么时候编辑我的 symfony 应用程序,或者我应该如何注册这个额外的行为?
实际上,我发现我可以监听一个事件来添加新的行为./symfony cc
:
$this->dispatcher->connect('task.cache.clear', array('ClearAPCCache','clearCache'))
仍然存在无法从命令行任务清除 APC 缓存的问题,因为 APC 缓存与 Web 服务器进程相关,而 symfony 命令是命令行脚本。
您只需要创建自己的自定义任务。
./symfony generate:task your_task_name
在这个任务中(在lib
文件夹中)你只需要运行类似的东西
protected function execute($arguments = array(), $options = array())
{
// Run your own apc cache
// ...
/// Then run the cache:clear
$this->runTask('cache:clear');
}