如何在symfony2中重新加载twig缓存

Azh*_*har 39 php symfony twig

我是PHP的新手,我有一个用PHP和symfony2框架开发的应用程序.我已经更改了html文件,当我刷新页面时,更改没有反映出来.

/protected/cache/

/protected/cache/

请指教,我正在使用tomcat服务器进行部署.

注意:我没有在服务器上配置symfony2命令行.

Ala*_*blo 46

最简单的方法,输入命令:

rm -rf app/cache/*
Run Code Online (Sandbox Code Playgroud)

重点是:所有文件app/cache/都可以自由删除,需要时可以重新生成.

如果你真的想清除twig缓存:

rm -rf app/cache/<environment>/twig
Run Code Online (Sandbox Code Playgroud)

更换<environment>dev,prodtest根据您的要求.


Lin*_*ink 36

创建新的Twig_Environment实例时,可以传递一个选项数组作为构造函数的第二个参数.其中之一是auto_reload.使用Twig进行开发时,每当源代码更改时重新编译模板都很有用.如果您没有为该auto_reload选项提供值,则将根据该debug值自动确定该值.

设置auto_reloadtrue:

$twig = new Twig_Environment($loader, array('auto_reload' => true));
Run Code Online (Sandbox Code Playgroud)

Twig针对开发人员的文档:http: //twig.sensiolabs.org/doc/api.html#environment-options


Man*_*uel 13

我有类似的问题,但删除缓存文件夹对我的模板没有任何影响,我不知道为什么.现在似乎解决我的问题的是我的config_dev.yml中的以下代码:

twig:
    cache: false
Run Code Online (Sandbox Code Playgroud)

也许这也是一个解决方案,所以你不需要一直使用命令.

参考文献:

TwigBundle配置

树枝环境选项