laravel5 缓存的使用

最近使用了laravel5 的 缓存,做些记录,若有错误,还望指正

  • 设置缓存

     1 #put 方式
     2  Cache::put(‘key‘, ‘value‘, $minutes);
     3
     4  # 设置文件缓存
     5  Cache::store(‘file‘)->get(‘foo‘);
     6
     7  #使用redis 做缓存
     8  Cache::store(‘redis‘)->put(‘bar‘, ‘baz‘, 10);       // 存储在redis 的数据 格式是这样子的,需要注意:1) "laravel:bar"
     9
    10  #其他缓存设置方式
    11  #add 方法只会把暂时不存在缓存中的项目放入缓存,如果成功存放,会返回 true,否则返回 false:
    12
    13  Cache::add(‘key‘, ‘value‘, $minutes);
    14
    15  #forever 方法可以用来存放永久的项目到缓存中,这些值必须被手动的删除,这可以通过 forget 方法实现:
    16
    17  Cache::forever(‘key‘, ‘value‘);
    18  // 删除使用 Cache::forget(‘key‘);
  • 判断缓存键值是否存在
    1 if(Cache::has(‘key‘)){
    2       # code
    3   }
  • 获取缓存
    1 #获取普通缓存
    2  $value = Cache::get(‘foo‘);
    3
    4  $value = Cache::pull(‘key‘);//put 与get 类似
    5
    6  #获取redis 缓存
    7  $value = Cache::store(‘redis‘)->get(‘bar‘);
    • 需要注意的是,获取缓存时,可以使用闭包函数的形式

      1 $value = Cache::get(‘key‘, function() {
      2       return DB::table(...)->get();
      3   });
  • 更新缓存
    • 有时候,你可能会想从缓存中取出一个项目,但也想在当取出的项目不存在时存入一个默认值,例如,你可能会想从缓存中取出所有用户,当找不到用户时,从数据库中将这些用户取出并放入缓存中,你可以使用 Cache::remember 方法达到目的:

      1 $value = Cache::remember(‘users‘, $minutes, function() {
      2       return DB::table(‘users‘)->get();
      3   });
    • 如果那个项目不存在缓存中,则返回给 remember 方法的闭包将会被运行,而且闭包的运行结果将会被存放在缓存中。
    • 使用 remember 和 forever 这两个方法来 ”永久“ 存储缓存:
      1 $value = Cache::rememberForever(‘users‘, function() {
      2       return DB::table(‘users‘)->get();
      3   });
  • 清除缓存
    1 #清除某个缓存
    2  Cache::forget(‘key‘);
    3
    4  # 清除所以缓存
    5  Cache::flush();
    6
    7  #pull 也可以清除缓存,并且获取该值
    8  Cache::pull(‘key‘);
  • 键值的递增与递减值(针对整型)

    increment 和 decrement 方法可以用来调整缓存中的整数项目值,这两个方法都可以选择性的传入第二个参数,用来指示要递增或递减多少:

    1   Cache::increment(‘key‘);
    2
    3   Cache::increment(‘key‘, $amount);
    4
    5   Cache::decrement(‘key‘);
    6
    7   Cache::decrement(‘key‘, $amount);
时间: 2024-11-05 22:46:59

laravel5 缓存的使用的相关文章

laravel5.5缓存系统

[toc] Laravel 为各种后端缓存提供丰富而统一的 API,而其配置信息位于 config/cache.php 文件中,Laravel 默认使用 file 缓存驱动,将序列化的缓存对象保存在文件系统中. 1 Redis的配置 这里仅探讨redis缓存配置的一些内容 1.1 安装PRedis PRedis是PHP访问redis的扩展包,只需要下载原码即可,不需要安装PHP扩展(如php-redis.so).我们使用composer安装 composer require predis/pre

laravel5.2之logout注销账号无效

问题描述:laravel5.2的框架,使用框架auth用户认证后,进行账号注销退出的时候,无法实现. 只有清除浏览器缓存,才能实现账号退出. 解决办法: 改变路由 Route::get('auth/logout', 'Auth\[email protected]'); 然后在你的AuthController的构造函数(constructor)里加上这段代码 public function __construct() { $this->middleware('guest', ['except' =

Laravel框架怎样使用阿里云ACE缓存服务

Laravel框架怎样使用阿里云ACE缓存服务 之前我写了一篇在 Laravel 4 框架中使用阿里云 OCS 缓存的文章.介绍了怎样通过扩展 Laravel 4 来支持须要 SASL 认证的阿里云 OCS 缓存服务.有网友问我.ACE 的缓存怎么在 Laravel 4 中使用.我本来认为应该能够全然用同样的办法,后来自己尝试的时候才发现,ACE 的缓存区别很大.所以再写一篇,介绍一下怎样在 Laravel 框架中使用阿里云 ACE 的缓存服务. 怎样扩展 Laravel 的缓存驱动 在 Lar

Laravel5的新特性 - 目录结构和命名空间

Laravel5的新特性 - 目录结构和命名空间 从Laravel4.2升级到Laravel5最大的一个原因就是因为目录结构的调整.Laravel5的目录结构能够更好的帮助人们理解web开发的最佳实践,对WEB的规范化将会做出不小的贡献.那么,Laravel5的目录结构是什么样的呢? app Commands Console Events Handlers Commands Events Http Controllers Middleware Requests Providers Service

Laravel框架如何使用阿里云ACE缓存服务

Laravel框架如何使用阿里云ACE缓存服务 之前我写了一篇在 Laravel 4 框架中使用阿里云 OCS 缓存的文章,介绍了如何通过扩展 Laravel 4 来支持需要 SASL 认证的阿里云 OCS 缓存服务.有网友问我,ACE 的缓存怎么在 Laravel 4 中使用.我本来觉得应该可以完全用相同的办法,后来自己尝试的时候才发现,ACE 的缓存差别非常大.所以再写一篇,介绍一下如何在 Laravel 框架中使用阿里云 ACE 的缓存服务. 如何扩展 Laravel 的缓存驱动 在 La

8. Laravel5学习笔记:在laravel5中使用OAuth授权

OAuth2.0简介 关于它的介绍,给出以下两篇文章,相信看完,应该对它有一定程度的了解: [1] 理解OAuth 2.0 -- 阮一峰 [2] 帮你深入理解OAuth2.0协议 -- seccloud 这里我主要阐述的是在laravel5中使用OAuth2.0.关于这个协议本身,以及运行流程希望大家看完以上两篇文章,理解后,再看我后面的内容! Laravel5中安装OAuth2.0 OAuth2.0在官方中提供了 php的库 ,但是我们这里并不直接使用它官方提供的 Server Librari

小白巷之Laravel5的新特性 - Events & Handlers

## Laravel5新特性 - Events & Handlers 事件是系统开发中非常重要的一部分,可以在一次编码后只需修改事件规则,无需更改流程代码.比如商城站,用户在登陆之后,系统会做两件事情: 1. 给新用户发送站内信,欢迎新用户: 2. 发送欢迎邮件: 如果按照原始的程序,会在注册完成之后触发一系列动作函数.但如果后期站内除了折扣码,我们不得不修改核心流程,添加折扣码处理函数.每添加一个动作必须修改核心流程,显然不符合最佳代码规范,我们可以将用户注册完成之后触发的一系列动作封装起来,

Laravel5.4实战快速开发自媒体网站教程 Laravel实战教程

第1章 课程介绍介绍课程的大体脉络和课程安排 第2章 Laravel 5.4介绍本节课会带领大家介绍laravel的各个版本历史以及讨论php框架的未来发展趋势.把laravel周边的生态环境一一展示. 第3章 安装启动Laravel项目本章介绍laravel是如何安装的,我们将使用composer工具对laravel进行安装.使用composer的时候,我们会修改下composer的镜像.不仅如此,我们还会在安装完成之后,带领大家一一介绍下laravel的目录结构和配置文件.让大家对larav

Apache Ignite——新一代数据库缓存系统

Apache Ignite是一个通用的数据库缓存系统,它不仅支持所有的底层数据库系统,比如RDBMS.NoSQL和HDFS,还支持Write-Through和Read-Through.Write-Behind Caching等可选功能. Apache Ignite是一个聚焦分布式内存计算的开源项目,它在内存中储存数据,并分布在多个节点上以提供快速数据访问.此外,可选地将数据同步到缓存层同样是一大优势.最后,可以支持任何底层数据库存储同样让 Ignite成为数据库缓存的首先.