m6web/apcu-bundle

此包的最新版本(v3.0.0)没有可用的许可证信息。

提供APCu支持

安装次数: 126,499

依赖者: 0

建议者: 0

安全性: 0

星标: 2

关注者: 49

分支: 1

开放问题: 1

类型:symfony-bundle

v3.0.0 2022-08-10 07:56 UTC

This package is auto-updated.

Last update: 2024-09-10 12:31:10 UTC


README

提供APCu支持,请参阅PECL/APCu

安装

通过Composer

"require": {
    "m6web/apcu-bundle" : "^1.4"
}

还需要PECL扩展APCu

# pecl install -f apcu

不要忘记在您的php.ini中启用扩展。

注意:由于APCu API的更新,从ApcuBundle v1.1.1版本开始,您必须安装APCu v4.0.7或更高版本

配置

主要配置键是m6web_apcu。每个子键定义一个新的Apcu缓存服务。这些服务命名为m6web_apcu + 子键。对于每个服务,可以设置几个参数

  • namespace(字符串,可选):默认为空。通过此实例存储在APCu缓存中所有键的命名空间。
  • ttl(整数,可选):默认为3600秒。定义没有提供TTL时存储数据使用的默认TTL。
  • class(字符串,可选):您可以覆盖默认的缓存类。它应该扩展M6Web\Bundle\ApcuBundle\Apcu\Apcu

示例

m6web_apcu:
    myCache:
        namespace: 6play-api-applaunch
        ttl: 3600
    otherCache: ~

用法

$cache = $container->get('m6web_apcu.myCache');
$key   = 'myCacheKey';

var_dump($cache->exists($key)); // boolean, false

$cache->store($key, 'Hello', 3600)

var_dump($cache->exists($key)); // boolean, true
var_dump($cache->fetch($key)); // string, Hello

$cache->delete($key);

var_dump($cache->exists($key)); // boolean, false
var_dump($cache->fetch($key)); // bolean, false

测试

如果您想运行Bundle测试,您必须在CLI环境中启用APCu,通过将apc.enable_cli选项设置为1

然后您可以运行测试

$ ./vendor/bin/phpunit tests