popphp / pop-cache
Pop PHP 框架的 Pop Cache 组件
4.0.0
2023-12-18 17:28 UTC
Requires
- php: >=8.1.0
- popphp/pop-db: ^6.5.0
Requires (Dev)
- phpunit/phpunit: ^10.0.0
README
概述
pop-cache
通过多个不同的适配器提供缓存频繁访问内容的能力。这些适配器都共享相同的接口,并且可以互换使用。根据服务器环境和可用资源,应用程序可以使用以下任何一个缓存适配器:
- Apc (缓存服务)
- Memcached (缓存服务)
- Redis (缓存服务)
- 文件 (磁盘上的目录)
- 数据库 (数据库缓存)
- 会话 (会话中的短期缓存)
pop-cache
是 Pop PHP 框架 的一个组件。
安装
使用 Composer 安装 pop-cache
。
composer require popphp/pop-cache
或者,在您的 composer.json 文件中添加依赖
"require": {
"popphp/pop-cache" : "^4.0.0"
}
快速入门
以下是一个基本示例,演示如何创建一个缓存对象,然后从中保存和检索一些数据。可以传递一个“生存时间”(TTL)值给适配器,单位是秒。如果设置为 0
,则缓存项将永远不会过期
use Pop\Cache\Cache; use Pop\Cache\Adapter\File; // Passing the file adapter the location on disk and the TTL $cache = new Cache(new Adapter\File('/path/to/my/cache/dir', 300)); $cache->saveItem('foo', $data); $data = $cache->getItem('foo');
检查缓存中是否有项目
if $cache->hasItem('foo') { } // Return bool
删除项目
$cache->deleteItem('foo');
删除项目
$cache->deleteItems(['foo', 'bar']);
清空缓存中的所有项目
$cache->clear();
APC
使用 APC 适配器需要在环境中正确设置 APC。
use Pop\Cache\Cache; use Pop\Cache\Adapter\Apc; $cache = new Cache(new Apc(300));
Memcached
使用 Memcached 适配器需要在环境中正确设置 Memcached。
use Pop\Cache\Cache; use Pop\Cache\Adapter\Memcached; $cache = new Cache(new Memcached(300, 'localhost', 11211));
Redis
使用 Redis 适配器需要在环境中正确设置 Redis。
use Pop\Cache\Cache; use Pop\Cache\Adapter\Redis; $cache = new Cache(new Redis(300, 'localhost', 6379));
文件
使用文件适配器将简单地将在本地磁盘上存储缓存数据。
use Pop\Cache\Cache; use Pop\Cache\Adapter\File; $cache = new Cache(new Adapter\File('/path/to/my/cache/dir', 300));
数据库
使用数据库适配器需要正确设置数据库并使用 pop-db
组件。
use Pop\Cache\Cache; use Pop\Cache\Adapter\Database; use Pop\Db\Db; $cache = new Cache( new Database(Db::sqliteConnect(['database' => __DIR__ . '/tmp/cache.sqlite']), 300) );
会话
使用会话适配器将缓存数据存储在会话中
use Pop\Cache\Cache; use Pop\Cache\Adapter\Session; $cache = new Cache(new Session(300));