Cover of the book Symfony 5: The Fast Track

Symfony 5: The Fast Track is the best book to learn modern Symfony development, from zero to production. +300 pages in full color showing how to combine Symfony with Docker, APIs, queues & async tasks, Webpack, Single-Page Applications, etc.

Buy printed version

Doctrine Cache Adapter

5.1 version
Maintained Unmaintained

Doctrine Cache Adapter

This adapter wraps any class extending the Doctrine Cache abstract provider, allowing you to use these providers in your application as if they were Symfony Cache adapters.

This adapter expects a \Doctrine\Common\Cache\CacheProvider instance as its first parameter, and optionally a namespace and default cache lifetime as its second and third parameters:

use Doctrine\Common\Cache\CacheProvider;
use Doctrine\Common\Cache\SQLite3Cache;
use Symfony\Component\Cache\Adapter\DoctrineAdapter;

$provider = new SQLite3Cache(new \SQLite3(__DIR__.'/cache/data.sqlite'), 'youTableName');

$cache = new DoctrineAdapter(

    // a cache provider instance
    CacheProvider $provider,

    // a string prefixed to the keys of the items stored in this cache
    $namespace = '',

    // the default lifetime (in seconds) for cache items that do not define their
    // own lifetime, with a value 0 causing items to be stored indefinitely (i.e.
    // until the database table is truncated or its rows are otherwise deleted)
    $defaultLifetime = 0


A Symfony\Component\Cache\DoctrineProvider class is also provided by the component to use any PSR6-compatible implementations with Doctrine-compatible classes.

This work, including the code samples, is licensed under a Creative Commons BY-SA 3.0 license.