moust / silex-cache
Silex应用程序的缓存服务提供商
v2.0.2
2017-10-17 12:36 UTC
Requires
- php: >=5.3.3
- pimple/pimple: ~3.0
Requires (Dev)
- phpunit/phpunit: ~4.5
- silex/silex: ~2.0
This package is not auto-updated.
Last update: 2024-09-14 15:00:48 UTC
README
Silex缓存服务提供商
Silex缓存服务提供商允许您在Silex应用程序中使用多种PHP字节码缓存。
安装
要启用它,请将以下依赖项添加到您的composer.json
文件中
{ "require": { "moust/silex-cache": "~2.0" } }
参数
- cache.options:缓存选项数组。
- driver:要使用的缓存驱动程序。可以是以下之一:
apc
、apcu
、array
、file
、memcache
、memcached
、xcache
、redis
、wincache
。 - cache_dir:仅与
file
缓存驱动程序相关,指定缓存目录的路径 - memcache:仅与
memcache
缓存驱动程序相关,提供要使用的Memcache实例。如果未定义,将实例化默认的Memcache对象。有关更多信息,请参阅Memcache文档:PHP: Memcache - Manual - memcached:仅与
memcached
缓存驱动程序相关,提供要使用的Memcached实例。如果未定义,将实例化默认的Memcached对象。有关更多信息,请参阅Memcached文档:PHP: Memcached - Manual - redis:仅与
redis
缓存驱动程序相关,提供要使用的Redis实例。如果未定义,将实例化默认的Redis对象。有关更多信息,请参阅PhpRedis文档:PhpRedis
- driver:要使用的缓存驱动程序。可以是以下之一:
注册
$app->register(new Moust\Silex\Provider\CacheServiceProvider(), array( 'cache.options' => array( 'driver' => 'apc' ) ));
用法
缓存提供程序提供缓存服务。以下是一个使用示例
// stores a variable $app['cache']->store('foo', 'bar'); // stores a variable with a 1 minute lifetime $app['cache']->store('foo', 'bar', 60); // fetch variable echo $app['cache']->fetch('foo'); // delete variable $app['cache']->delete('foo'); // clear all cached variables $app['cache']->clear();
使用多个缓存
缓存提供程序允许访问多个缓存。为了配置缓存驱动程序,请将cache.options
替换为caches.options
。caches.options
是一个配置数组,其中键是缓存名称,值是选项
$app->register(new Moust\Silex\Provider\CacheServiceProvider(), array( 'caches.options' => array( 'apc' => array( 'driver' => 'apc' ), 'filesystem' => array( 'driver' => 'file', 'cache_dir' => './temp' ), 'memory' => array( 'driver' => 'array' ), 'memcache' => array( 'driver' => 'memcache', 'memcache' => function () { $memcache = new \Memcache; $memcache->connect('localhost', 11211); return $memcache; } ) ) ));
第一个注册的缓存是默认的,可以像只有一个缓存一样访问。根据上述配置,以下两行是等效的
$app['cache']->store('foo', 'bar'); $app['caches']['apc']->store('foo', 'bar');
许可证
版权所有 (c) 2014 Quentin Aupetit
在此特此授予任何获取此软件及其相关文档副本(以下简称“软件”)的人无限制地处理软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许向软件提供的人按以下条件这样做
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
软件按“现状”提供,不提供任何明示或暗示的保证,包括但不限于适销性、适用于特定目的和无侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论此类责任是基于合同、侵权或其他方式,以及与软件或软件的使用或其他交易有关。