Doctrine DBAL Cache Adapter
The Doctrine DBAL adapters store the cache items in a table of an SQL database.
Note
This adapter implements PruneableInterface,
allowing for manual pruning of expired cache entries
by calling the prune()
method.
The DoctrineDbalAdapter requires a Doctrine DBAL Connection, or Doctrine DBAL URL as its first parameter. You can pass a namespace, default cache lifetime, and options array as the other optional arguments:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
use Symfony\Component\Cache\Adapter\DoctrineDbalAdapter;
$cache = new DoctrineDbalAdapter(
// a Doctrine DBAL connection or DBAL URL
$databaseConnectionOrURL,
// the 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,
// an array of options for configuring the database table and connection
$options = []
);
Note
DBAL Connection are lazy-loaded by default; some additional options may be necessary to detect the database engine and version without opening the connection.
This work, including the code samples, is licensed under a
Creative Commons BY-SA 3.0
license.