缓存是使Web应用程序快速运行的重要工具。这很容易实现,但很难做到正确。如何使用Laravel的内置系统实现缓存,该系统支持Memcached和Redis等多种后端
Laravel为不同的缓存系统封装了统一的API,缓存配置文件./config/cache.php
主要的缓存类型(驱动)
- file - 文件,默认使用
- memcached - memcached
- redis - redis
- database - 数据库
默认laravel支持缓存介质:apc
, array
, database
, file
, memcached
, redis
在配置文件.env
中修改驱动类型
CACHE_DRIVER=file
设置缓存
use Illuminate\Support\Facades\Cache; // Cache门面
# 添加 如果key不存在则添加成功,如果key存在,返回false
Cache::add('key', 'value', $seconds);
# 设置 不管key值是否存,都可以设置成功
Cache::put('key', 'value', $seconds);
# 设置永久缓存
Cache::forever('key', 'value');
文件所生成的地方在 ./storage/framework/cache/data/
目录下
获取缓存数据
$value = Cache::get('key');
$value = Cache::get('key', 'default');
$value = Cache::get('key', function(){});
# 获取的同时并存储
$value = Cache::remember('users', $minutes, function () {
return 'key不存的时候返回的数据';
});
检查缓存项是否存在
# 检查缓存的key值是否存在,存在返回true否则返回false
Cache::has('key')
删除缓存数据
# 先获取再删除
$value = Cache::pull('key');
# 删除单个
Cache::forget('key');
# 清除所有的缓存
Cache::flush();
缓存辅助函数
除了使用 Cache
门面或缓存契约,还可以使用全局的 cache()
函数来通过缓存获取和存储数据。当带有一个字符串参数的 cache()
函数被调用时,会返回给定键对应的缓存值(取值):
$value = cache('key');
如果你提供了键值对数组和一个过期时间给该函数,则会在指定的有效期内存储缓存值(存储):
cache(['key' => 'value'], $seconds);
cache(['key' => 'value'], now()->addMinutes(10));
cache()
函数不带任何参数被调用时会返回 Illuminate\Contracts\Cache\Factory 实现的实例,从而允许你调用其它缓存方法:
cache()->remember('users', $seconds, function () {
return DB::table('users')->get();
});
到此这篇关于PHP Laravel框架缓存操作介绍的文章就介绍到这了,更多相关PHP Laravel缓存内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
本文标题为:PHP Laravel框架缓存操作介绍
基础教程推荐
- 在Laravel中实现使用AJAX动态刷新部分页面 2023-03-02
- PHP获取MySQL执行sql语句的查询时间方法 2022-11-09
- 使用PHP开发留言板功能 2023-03-13
- PHP实现Redis单据锁以及防止并发重复写入 2022-10-12
- laravel 解决多库下的DB::transaction()事务失效问题 2023-03-08
- php array分组,PHP中array数组的分组排序 2022-08-01
- thinkphp3.2.3框架动态切换多数据库的方法分析 2023-03-19
- laravel ORM关联关系中的 with和whereHas用法 2023-03-02
- PHP中的错误及其处理机制 2023-06-04
- PHP命名空间简单用法示例 2022-12-01