beryllium / silex-cache-provider
此包已被废弃且不再维护。未建议替代包。
Silex 的缓存提供程序,支持 Memcache、APC 和基于文件的缓存。
1.0
2013-11-28 10:06 UTC
Requires
- php: >5.3.8
- beryllium/cache: *
- silex/silex: *
This package is auto-updated.
Last update: 2022-02-01 12:28:43 UTC
README
SilexCacheProvider 可以配置以提供 Memcache、APC 或基于文件的缓存客户端接口。
安装
运行 composer require beryllium/silex-cache-provider
或将其添加到您的 composer.json 中
"require": {
"beryllium/silex-cache-provider": "*"
}
目前,该提供程序仅提供最小稳定性为 "dev"。
配置
Memcache
使用 Memcache 注册提供程序(需要安装 PHP memcache 扩展)
$app->register(
new Beryllium\SilexCacheProvider\SilexCacheProvider(),
array(
'be_cache.type' => 'memcache',
'be_cache.host' => '127.0.0.1',
'be_cache.port' => 11211,
)
);
上述设置是提供程序的默认值,因此如果您使用的是这种配置,实际上可以这样操作
$app->register(new Beryllium\SilexCacheProvider\SilexCacheProvider());
文件缓存
此选项需要一个具有写访问权限的本地文件夹。be_cache 服务将使用该文件夹来存储 PHP 的序列化数据。
$app->register(
new Beryllium\SilexCacheProvider\SilexCacheProvider(),
array(
'be_cache.type' => 'filecache',
'be_cache.path' => __DIR__ . '/cache'
)
);
APC 缓存
此选项需要 APC 扩展处于活动状态。
$app->register(
new Beryllium\SilexCacheProvider\SilexCacheProvider(),
array(
'be_cache.type' => 'apc'
)
);
使用方法
缓存服务公开了三种方法:设置、获取和删除。
设置
此方法需要三个参数:键名、数据和生存时间(以秒为单位)。
要存储变量 $data 5 分钟,您可以使用
$app['be_cache']->set('key_name', $data, 300);
获取和删除
这些方法仅需要一个参数:键名。
$data = $app['be_cache']->get('key_name');
// ...
$app['be_cache']->delete('key_name');
附加提示
前缀
您可能希望与其他进程共享您的 Memcache 实例。在这种情况下,您希望将应用程序的所有键重命名空间,以便它们不会发生冲突。
这可以通过在注册设置中指定前缀来完成
'be_cache.prefix' => 'example_prefix|';
获取客户端
您可以通过两种方式从服务中检索客户端
$client = $app['be_cache.client'];
// or
$client = $app['be_cache']->getClient();