phossa2 / cache
该软件包已被废弃,不再维护。没有建议的替代软件包。
一个符合PSR-6的PHP缓存库
2.0.1
2016-08-26 02:45 UTC
Requires
- php: ~5.4|~7.0
- phossa2/event: ^2.1.6
- phossa2/shared: ^2.0.27
- phossa2/storage: ^2.0.0
- psr/cache: ^1.0
Requires (Dev)
- phpunit/phpunit: 4.*
Suggests
- psr/log-implementation: Allows log messages
Provides
- psr/cache-implementation: 1.0.0
Replaces
This package is not auto-updated.
Last update: 2020-01-24 16:10:39 UTC
README
请使用phoole/cache代替。
phossa2/cache是一个符合PSR-6规范的PHP缓存库。它支持各种驱动程序和有用的功能,如绕过、加密、雪崩保护等。
它需要PHP 5.4,支持PHP 7.0+和HHVM。它符合PSR-1、PSR-2、PSR-3、PSR-4、PSR-6以及提议的PSR-5。
安装
通过composer
工具安装。
composer require "phossa2/cache"
或者将以下行添加到您的composer.json
{ "require": { "phossa2/cache": "2.*" } }
功能
-
完全符合PSR-6
-
支持所有可序列化的PHP数据类型
-
包含扩展:
-
绕过:如果URL中看到触发器(例如'?nocache=true'),则绕过缓存。
-
雪崩保护:当缓存对象的生存时间小于可配置的时间时,通过可配置的百分比,缓存将在'isHit()'上返回false,从而触发对象的重新生成。
-
加密:对序列化内容进行简单扩展。
-
分布式过期:通过稍微调整过期时间来平衡项目缺失的峰值。
-
-
驱动程序
-
StorageDriver
存储驱动程序使用phossa2/storage本地或云存储。
-
NullDriver
黑洞驱动程序,可以用作所有其他驱动程序的备用驱动程序。
-
用法
-
简单用法
/* * cache dir default to local sys_get_temp_dir() . '/cache' */ $cache = new CachePool(); $item = $cache->getItem('/data.cache'); if (!$item->isHit()) { $value = calcuate_data(); $item->set($value); $cache->save($item); } $data = $item->get();
-
指定驱动程序
use Phossa2\Cache\Driver\StorageDriver; use Phossa2\Storage\Storage; use Phossa2\Storage\Filesystem; use Phossa2\Storage\Driver\LocalDriver; $driver = new StorageDriver( new Storage('/', new Filesystem(new LocalDriver(sys_get_temp_dir()))), '/cache' ); $cache = new CachePool($driver);
-
使用扩展
/* * DistributedExpiration extension */ use Phossa2\Cache\CachePool; use Phossa2\Cache\Extension\DistributedExpiration; $cache = new CachePool(); $cache->addExtension(new DistributedExpiration());
变更日志
请参阅CHANGELOG以获取更多信息。
测试
$ composer test
贡献
请参阅CONTRIBUTE以获取更多信息。
依赖
-
PHP >= 5.4.0
-
phossa2/event >= 2.1.4
-
phossa2/storage >= 2.0.0