zebrains/file-cache

0.0.2 2020-07-01 05:36 UTC

This package is not auto-updated.

Last update: 2024-09-19 01:43:18 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' 的匹配搜索