我想从控制器中清除缓存。我已将命令定义为服务并调用它。
clear_cache_command_service:
class: Symfony\Bundle\FrameworkBundle\Command\CacheClearCommand
calls:
- [setContainer, ["@service_container"] ]
In my controller I have a form to choose a command, and when the cache-clearing command is chosen it runs:
$clearCacheCommand = $this->container->get('clear_cache_command_service');
$clearCacheCommand->run(new ArrayInput(array()), new ConsoleOutput());
然而,这会运行一段时间,因为它也会预热缓存(我实际上希望它也能预热它)。它也超时,所以我也需要set_time_limit
它。
有没有办法在浏览器中返回响应并让命令在服务器上运行并完成?我不希望客户一直等待它完成。