How reload Twig cache in Symfony 2

The most simple way, type the command :

rm -rf app/cache/*

The point is: all files in app/cache/ can be removed freely, they are regenerated when needed.

If you really want to clear only twig cache :

rm -rf app/cache/<environment>/twig

Replace <environment> by dev, prod, or test according to your requirements.


When creating a new Twig_Environment instance, you can pass an array of options as the constructor second argument. One of them is auto_reload. When developing with Twig, it's useful to recompile the template whenever the source code changes. If you don't provide a value for the auto_reload option, it will be determined automatically based on the debug value.

Set auto_reload to be true:

$twig = new Twig_Environment($loader, array('auto_reload' => true));

Twig's documentation for developers: http://twig.sensiolabs.org/doc/api.html#environment-options


I had a similar problem, but deleting the cache-folder did not have any impact on my template and I don't know why. What seems to solve my problem now is the following code in my config_dev.yml:

twig:
    cache: false

Maybe this is also a solution for you, so that you don't need to use the command all the time.

References:

TwigBundle Configuration

Twig Environment Options


If you are using opcache/other similar caching, deleting twig's cache folder won't refresh templates as twig cache consist of only .php files. You need to delete twig's cache folder + execute php file which contains:

opcache_reset();