zebrains / file-cache
0.0.2
2020-07-01 05:36 UTC
Requires
- psr/simple-cache: ^1.0@dev
Requires (Dev)
- mockery/mockery: ^1.4
- phpunit/phpunit: ^9.2
This package is not auto-updated.
Last update: 2024-11-14 02:22:32 UTC
README
Библиотека для файлового кеша, поддерживающая работу с тегами и масками. Совместима с PSR-16.
Установка
composer require zebrains/file-cache
Пример
Импортируем нужные классы и создаем экземпляр сервиса (менеджера)
use Zebrains\Filecache\Manager;
use Zebrains\Filecache\ImmediateInvalidator;
use Zebrains\Filecache\\Converter;
use Zebrains\Filecache\Formatters\RawFormatter;
$manager = new Manager($path, new Converter(), new RawFormatter(), new ImmediateInvalidator());
Менеджер реализует интерфейс Psr\SimpleCache\CacheInterface
:
$key = '1:/catalog/product1';
$data = '<html><head><title>Hello world</title></head><body><p>Hello world!</p></body></html>';
$ttl = strtotime('now') + 60*60*24;
$manager->set($key, $data, $ttl);
var_dump($manager->get($key));
Есть поддержка тегов:
$tags = ['catalog', 'product1'];
$manager->setWithTags($key, $data, $tags, $ttl);
var_dump($manager->getByTag('catalog'));
Есть поддержка поиска по маске. В данный момент поддерживается только символ *
.
Пример:
$manager->getByMask('1:', '*'));
- будет произведен поиск на соответствие маске '1:*'
$manager->getByMask('1:', '*', '/product1'));
- будет произведен поиск на соответствие маске '1:*/product1'