knot-lib / cache
kNot 框架的缓存库。
0.3.0
2021-06-05 20:31 UTC
Requires
- php: >=7.2
- ext-json: *
- knot-lib/config: ~0.1
- psr/simple-cache: ^1.0
- stk2k/file-system: ~0.1
Requires (Dev)
- mikey179/vfsstream: 1.6.8
- php-coveralls/php-coveralls: ^2.0
- phpunit/phpunit: ^8.5.15
This package is auto-updated.
Last update: 2023-09-06 01:16:51 UTC
README
描述
kNot 框架的缓存库。
特性
- PSR16: 符合 SimpleCache 规范
- 文件缓存
- 数组缓存
示例(FileCache)
配置
$config = [ 'cache' => [ 'root' => '/path/to/cache', 'expire' => 5, // expires 5 seconds after cache item is set ] ];
get/set
$cache = new FileCache($config); $cache->set('my favorite artist', 'stevie wonder'); echo $cache->get('my favorite artist'); // stevie wonder $cache->set('my favorite artist', 'justin bieber'); echo $cache->get('my favorite artist'); // justin bieber
过期
$cache = new FileCache($config); $cache->set('my favorite artist', 'stevie wonder'); echo $cache->get('my favorite artist'); // stevie wonder sleep(6); echo $cache->get('my favorite artist'); // $cache->set('my favorite artist', 'stevie wonder', 10); sleep(6); echo $cache->get('my favorite artist'); // stevie wonder
删除
$cache = new FileCache($config); $cache->set('my favorite artist', 'stevie wonder'); echo $cache->get('my favorite artist'); // stevie wonder $cache->delete('my favorite artist'); echo $cache->get('my favorite artist'); //
清除
$cache = new FileCache($config); $cache->set('my favorite artist', 'stevie wonder'); $cache->set('my favorite movie', 'Jurassic Park'); echo $cache->get('my favorite artist'); // stevie wonder echo $cache->get('my favorite movie'); // Jurassic Park $cache->clear(); echo $cache->get('my favorite artist'); // echo $cache->get('my favorite movie'); //
获取多个缓存
$cache = new FileCache($config); $cache->set('my favorite artist', 'stevie wonder'); $cache->set('my favorite movie', 'Jurassic Park'); $values = $cache->getMultiple([ 'my favorite artist', 'my favorite movie' ]); echo print_r($values, true); // Array // ( // [my favorite artist] => stevie wonder // [my favorite movie] => Jurassic Park // )
设置多个缓存
$cache = new FileCache($config); $cache->setMultiple([ 'my favorite artist' => 'stevie wonder', 'my favorite movie' => 'Jurassic Park', ]); echo $cache->get('my favorite artist'); // stevie wonder echo $cache->get('my favorite movie'); // Jurassic Park
数组缓存
$cache = new ArrayCache($config); $cache->set('my favorite artist', 'stevie wonder'); echo $cache->get('my favorite artist'); // stevie wonder sleep(6); echo $cache->get('my favorite artist'); //
使用方法
1. 创建配置数组
- FileCache 需要 cache/root
- cache/expire 是可选的(单位:秒)
2. 创建缓存对象
- 将配置数组传递给构造函数
3. 设置或获取缓存
- 使用 get() 方法获取缓存项
- 使用 set() 方法更新缓存项
要求
PHP 7.2 或更高版本
安装 knot-lib/cache
推荐通过 Composer 安装 knot-lib/cache。
composer require knot-lib/cache
安装后,需要引入 Composer 的自动加载器
require 'vendor/autoload.php';
许可
此库遵循 MIT 许可协议。
作者
免责声明
此软件无任何保证。
我们不对此软件的使用引起的任何结果负责。
请自行承担责任。