slabphp / cache-manager
SlabPHP 缓存管理库
v0.1.2
2018-02-15 00:00 UTC
Requires
- psr/log: ^1.0
- slabphp/component-interfaces: ^0.2
Requires (Dev)
- phpunit/phpunit: ^6.5
Suggests
- predis/predis: Allows usage of the Predis cache provider
This package is auto-updated.
Last update: 2024-09-09 02:24:04 UTC
README
SlabPHP 缓存管理驱动库封装了多种不同的缓存提供者,并为它们提供了一个统一的接口。
此库已弃用,但由于它仍然是 SlabPHP monorepo 的一部分,因此它也被开源。有更好的替代方案采用了 PSR 标准,您应该使用这些替代方案。此库的作者甚至不认为将这些不同的库一起封装为缓存的好模式。请参阅 SlabPHP 主文档以获取有关此信息和其他 SlabPHP 仓库的更多信息。
安装和设置
首先使用 composer 包含此库
composer require slabphp/cache-manager
然后创建您的提供者对象
$provider = new \Slab\Cache\Providers\Predis();
$provider
->setHost('locallhost', 6379);
$driver = new \Slab\Cache\Driver();
$driver
->setProvider($provider);
使用方法
使用请求对象
请求对象旨在通过一个基本步骤封装获取和设置缓存。
$request = new \Slab\Cache\Request();
$request
->setCacheKey('my-key')
->setCacheTTL(3600)
->setCallback($someObject, 'someCallBackFunction', ['value1'])
->setForceRefresh(!empty($_GET['cacheRefresh']));
$output = $driver->execute($request);
它所做的是首先检查设置的缓存提供者是否存在键为 'my-key' 的值。如果存在,则返回它。否则,它将执行 $someObject->someCallBackFunction('value1'),将值与键 'my-key' 和 ttl 为 3600 秒一起保存,然后返回它。
其他方法
您可以在驱动器上执行 get()、set() 和 delete() 操作,它们将传递到提供者。您还可以在驱动器上执行 ->getProvider() 以执行任何特定于提供者的操作。