Адаптер кеша Doctrine DBAL
Дата обновления перевода 2024-06-24
Адаптер кеша Doctrine DBAL
Адаптеры Doctrine DBAL хранят объекты кеша в таблице базы данных SQL.
Note
Этот адаптер реализует PruneableInterface, что позволяет
вручную отбирать устаревшие записи кеша , путём вызова
метода prune()
.
DoctrineDbalAdapter требует соединения Doctrine DBAL или Doctrine DBAL URL в качестве первого параметра. Вы можете передать пространство имён, время жизни кеша по умолчанию и массив опций в качестве других необязательных аргументов:
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(
// соединение Doctrine DBAL или DBAL URL
$databaseConnectionOrURL,
// строка, которая добавляется в начале ключей объектов, которые хранятся в этом кеше
$namespace = '',
// жизненный цикл по умолчанию (в секундах) для объектов кеша, которые не определяют собственный
// жизненный цикл, где значение 0 приводит к бесконечному хранению объектов (т.е. пока таблица базы
// данных не будет обрезана или ее строки не будут удалены другим образом)
$defaultLifetime = 0,
// массив опций для конфигурации таблицы базы данных и соединения
$options = []
);
Note
Соединения DBAL загружаются лениво по умолчанию; для определения движка и версии базы данных без необходимости установки соединения, могут потребоваться некоторые дополнительные опции.
Адаптер использует синтаксис SQL, оптимизированный для сервера баз данных, к которому он подключен. Известно, что совместимы следующие серверы баз данных:
- MySQL 5.7 и новее
- MariaDB 10.2 и новее
- Oracle 10g и новее
- SQL Server 2012 и новее
- SQLite 3.24 или новее
- PostgreSQL 9.5 или новее
Note
В более новых релизах Doctrine DBAL эти минимальные версии могут быть увеличены. Проверьте в руководстве на странице Платформы Doctrine DBAL, совместим ли ваш сервер баз данных с установленной версией Doctrine DBAL.