我是新来的PHP,我这是在PHP和Symfony2的框架开发的应用程序。 我已经改变HTML文件,当我刷新页面的变化没有反映。
01. I restarted the server No luck.
02. I tried to remove the twig folder from /protected/cache/ page it self not loading.
请告知,我使用Tomcat服务器来部署。
注:我没有做服务器配置Symfony2的命令行。
我是新来的PHP,我这是在PHP和Symfony2的框架开发的应用程序。 我已经改变HTML文件,当我刷新页面的变化没有反映。
01. I restarted the server No luck.
02. I tried to remove the twig folder from /protected/cache/ page it self not loading.
请告知,我使用Tomcat服务器来部署。
注:我没有做服务器配置Symfony2的命令行。
最简单的方式,键入命令:
rm -rf app/cache/*
问题的关键是:在所有文件app/cache/
可自由取下,在需要的时候它们再生。
如果你真的想只清除树枝缓存:
rm -rf app/cache/<environment>/twig
替换<environment>
通过dev
, prod
,或test
根据您的要求。
当创建一个新Twig_Environment例如,您可以通过选项作为构造第二个参数数组。 其中之一是auto_reload
。 当枝条发展,是非常有用的重新编译模板每当更改源代码。 如果你没有提供的值auto_reload
选项,它会自动确定基于的debug
值。
设置auto_reload
是true
:
$twig = new Twig_Environment($loader, array('auto_reload' => true));
嫩枝的文档开发商: http://twig.sensiolabs.org/doc/api.html#environment-options
我有一个类似的问题,但删除缓存文件夹并没有对我的模板的任何影响,我不知道为什么。 有什么事解决我的问题,现在是我config_dev.yml下面的代码:
twig:
cache: false
也许这也是你的解决方案,让您无需使用命令所有的时间。
参考文献:
TwigBundle配置
嫩枝环境选项
如果您正在使用opcache /其他类似的高速缓存,删除树枝的缓存文件夹中缓存枝包括只有.php文件不会刷新模板。 您需要删除树枝的缓存文件夹+执行PHP文件,其中包含:
opcache_reset();
你所要做的位于Web文件夹app.php文件中的一些变化。
更改:
$kernel = new AppKernel('prod', false);
至:
$kernel = new AppKernel('prod', true);
如果你想清除缓存。
如果您正在使用OPcache确保注释掉opcache.validate_timestamps=0
的开发环境。
您可以添加这样的功能:
public function renderView($view, array $parameters = array())
{
$loader = new \Twig_Loader_Filesystem($this->container->getParameter("template_path"));
$twig = new \Twig_Environment($loader, array('auto_reload' => true,
'cache' => false
));
/////////////////////add a translate filter///////////////////////
$getTextdomain = new \Twig_SimpleFilter('trans',function ($string){
return $this->container->get('translator')->trans($string);
});
$twig->addFilter($getTextdomain);
//////////////////////////////////////////////////////////////////
///////////////////////////Add an extension twig//////////////////
$twig->addExtension(new Extension());
//////////////////////////////////////////////////////////////////
return $twig->render($view, $parameters);
}