Адаптер кеша PDO & Doctrine DBAL

Адаптер кеша PDO & Doctrine DBAL

Этот адаптер хранит кешированные объекты в DB SQL. Он требует PDO, Соединения Doctrine DBAL, или Data Source Name (DSN) в качестве первого параметра, и опционально, пнространства имён, времени жизни кеша по умолчанию, и массива опций в качестве второго, третьего и четвёртого парамтеров:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use Symfony\Component\Cache\Adapter\PdoAdapter;

$cache = new PdoAdapter(

    // PDO, соединение Doctrine DBAL или DSN для ленивого соединения через PDO
    $databaseConnectionOrDSN,

    // строка-префикс к ключам объектов, хранящихся в этом кеше
    $namespace = '',

    // время жизни (в секундах) объектов кеша по умолчанию для объектов кеша, которые не определяют
    // собственное время жизни, со значением 0, что приводит к бесконечному сохранению объектов
    // (т.е. пока табликца DB не будет усечена или её строки не будут удалены другим образом)
    $defaultLifetime = 0,

    // массив опций для конфигурации соединения DB
    $options = array()
);

Tip

При передаче строки Имени источника данных (DSN) (вместо экземпляра класса соединения DB), соединение будет загружено лениво по необходимости.

Note

Начиная с Symfony 3.4, это адаптер реализует PruneableInterface, что позволяет ручное отсечение просроченных записей кеша путём вызова его метода prune().