




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第PHPlaravel缓存cache机制详解目录一、访问多个缓存存储二、从缓存中获取数据1.获取数据并设置默认值2.检查缓存项是否存在3.数值增加/减少4.获取存储5.获取删除三、缓存中存储数据1.获取存储数据2.缓存不存在时存储数据3.永久存储数据四、从缓存中移除数据Laravel中的cache为我们提供了三种缓存机制。
Redis,memcache,以及框架的文件缓存。
这里主要看的是cache中的文件缓存。
一、访问多个缓存存储
使用Cache门面,你可以使用store方法访问不同的缓存存储器,传入store方法的键就是cache配置文件中stores配置数组里列出的相应的存储器:
$value=Cache::store('file')-get('foo');
Cache::store('redis')-put('bar','baz',600);//10分钟
二、从缓存中获取数据
1.获取数据并设置默认值
(1):正常取值
$value=Cache::get('key');
(2):如果不存在,附默认值
$value=Cache::get('key','default');
(3):使用闭包操作,附默认值
$value=Cache::get('key',function(){
returnDB::table(...)-get();
2.检查缓存项是否存在
has方法用于判断缓存项是否存在,如果值为null或false该方法会返回false:
if(Cache::has('key')){
3.数值增加/减少
increment和decrement方法可用于调整缓存中的整型数值。这两个方法都可以接收第二个参数来指明缓存项数值增加和减少的数目:
Cache::increment('key');
Cache::increment('key',$amount);
Cache::decrement('key');
Cache::decrement('key',$amount);
4.获取存储
有时候你可能想要获取缓存项,但如果请求的缓存项不存在时给它存储一个默认值。例如,你可能想要从缓存中获取所有用户,或者如果它们不存在的话,从数据库获取它们并将其添加到缓存中,你可以通过使用Cache::remember方法实现:
$value=Cache::remember('users',$seconds,function(){
returnDB::table('users')-get();
如果缓存项不存在,传递给remember方法的闭包被执行并且将结果存放到缓存中。
你还可以使用rememberForever方法从缓存中获取数据或者将其永久存储起来:
$value=Cache::rememberForever('users',function(){
returnDB::table('users')-get();
});
5.获取删除
如果你需要从缓存中获取缓存项然后删除,你可以使用pull方法,和get方法一样,如果缓存项不存在的话返回null:
$value=Cache::pull('key');
三、缓存中存储数据
1.获取存储数据
你可以使用Cache门面上的put方法在缓存中存储数据。当你在缓存中存储数据的时候,需要指定数据被缓存的时间(秒数):
Cache::put('key','value',$seconds);
如果没有传递缓存时间到put方法,则缓存项永久有效:
Cache::put('key','value');
除了传递缓存项失效时间,你还可以传递一个代表缓存项有效时间的PHPDatetime实例:
$expiresAt=Carbon::now()-addMinutes(10);
Cache::put('key','value',$expiresAt);
2.缓存不存在时存储数据
add方法只会在缓存项不存在的情况下添加数据到缓存,如果数据被成功添加到缓存返回true,否则,返回false:
Cache::add('key','value',$seconds);
3.永久存储数据
forever方法用于持久化存储数据到缓存,这些值必须通过forget方法手动从缓存中移除:
Cache::forever('key','value');
四、从缓存中移除数据
可以使用Cache门面上的forget方法从缓存中移除缓存项数据:
Cache::forget('key');
还可以通过设置缓存有效期为0或负数来移除缓存项:
Cache::put('key','value
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2025各个班组三级安全培训考试试题及参考答案(综合卷)
- 公共关系学基础理论考察试题及答案
- 2025室内墙面装修工程施工合同
- 2025-2030年隐形无线耳机产业市场发展分析及发展趋势与投资研究报告
- 2025-2030年阻燃剂行业风险投资发展分析及投资融资策略研究报告
- 2025-2030年铁路装备行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030年钢筋行业兼并重组机会研究及决策咨询报告
- 2025-2030年金银珠宝首饰产业发展分析及行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030年超滤机行业市场发展分析及前景趋势与投资战略研究报告
- 2025-2030年船舶制造行业发展分析及前景趋势与投资研究报告
- 安徽省1号卷A10联盟2025届高三5月最后一卷物理试题及答案
- 2025租赁合同续签协议书
- 《聚碳酸酯合成》课件
- 3.2基因工程的基本操作程序课件 高二下学期生物人教版(2019)选择性必修3
- 23.《海底世界》课件
- 广东省广州市2025年中考地理模拟测试卷(含答案)
- 中国文化概要智慧树知到期末考试答案章节答案2024年温州大学
- 2024奥数竞赛5年级培训题-答案版
- (完整版)《应用光学》第2章课后答案
- 社区获得性肺炎的护理ppt课件
- FCT治具治具制作规格书 WI-A-025
评论
0/150
提交评论