42 votes

Comment mettre en cache dans Symfony 2 ?

J'ai besoin de mettre en cache certaines données spécifiques à l'application à l'aide du système de mise en cache de Symfony 2 afin de pouvoir exécuter cache:clear pour les effacer. Tout le cache repose sur app/cache mais comment puis-je réellement mettre en cache les données ?

http://symfony.com/doc/current/cookbook/index.html

Le seul sujet que je vois concerne la mise en cache HTML avec Varnish.

78voto

Kris Wallsmith Points 4804

Si vous utilisez déjà Doctrine, utilisez simplement ces classes de cache.

Ajouter un service à config.yml :

 services:
    cache:
        class: Doctrine\Common\Cache\ApcCache

Et utilisez-le dans votre contrôleur :

 if ($fooString = $this->get('cache')->fetch('foo')) {
    $foo = unserialize($fooString);
} else {
    // do the work
    $this->get('cache')->save('foo', serialize($foo));
}

10voto

Alsatian Points 2385

Symfony 3.1 fournit un nouveau composant Cache .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X