缓存组件
编辑本页警告:您正在浏览的文档欧宝体育电话欧宝娱乐app下载地址Symfony 3.1,现已不再维护。
读本页的更新版本用于Sy欧宝娱乐app下载地址mfony 6.2(当前稳定版本)。
缓存组件
Cache组件提供了严格的PSR-6实现用于向应用程序添加缓存。它的设计开销很低,并且附带了用于最常见的缓存后端的现成适配器。
3.1
在Symfony 3.1中引入了缓存组件。欧宝娱乐app下载地址
安装
你可以用两种不同的方式安装组件:
- 通过Composer安装(
欧宝娱乐app下载地址symfony /缓存
在Packagist); - 使用官方Git存储库(https://github.com/欧宝娱乐app下载地址symfony/cache).
关键概念
在开始使用Cache组件之前,了解一些关键概念的含义是很重要的:
- 项
- 以键/值对存储的单个信息单元,其中键是信息的唯一标识符,值是信息的内容;
- 池
- 缓存项的逻辑存储库。所有缓存操作(保存项、查找项等)都是通过池执行的。应用程序可以根据需要定义任意数量的池。
- 适配器
- 它实现了实际的缓存机制,将信息存储在文件系统、数据库等中。该组件为常见的缓存后端(Redis, APCu等)提供了几个随时可用的适配器。
基本用法
这个组件是一个严格的实现PSR-6,这意味着API与标准中定义的API相同。在开始缓存信息之前,使用任何内置适配器创建缓存池。例如,要创建基于文件系统的缓存,请实例化FilesystemAdapter:
1 2 3
使用欧宝娱乐app下载地址\组件\缓存\适配器\FilesystemAdapter;$缓存=新FilesystemAdapter ();
现在你可以使用这个缓存池创建、检索、更新和删除项目:
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
//通过尝试从缓存中获取一个新项来创建一个新项$numProducts=$缓存->getItem (“stats.num_products”);//为项目赋值并保存$numProducts->集(4711);$缓存->保存($numProducts);//获取缓存项$numProducts=$缓存->getItem (“stats.num_products”);如果(!$numProducts->isHit ()) {/ /……项在缓存中不存在}//获取项存储的值$总计=$numProducts->get ();//删除缓存项$缓存->deleteItem (“stats.num_products”);
此工作,包括代码示例,是根据创作共用BY-SA 3.0许可证。