欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

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);
    复制代码

     

标签: laravelphp

来自 https://www.cnblogs.com/zeopean/p/flush.html

普通分类: