• Laravel 为各种不同的缓存系统提供一致的 API
  • Laravel 支持各种常见的后端缓存系统,如 File、Memcached 和 Redis
  • 主要方法:put()add()forever()has()get()pull()forget()
  • 配置文件:config/cache.php
  • 演示:routes/web.php 新建路由
Route::any('cache1', 'StudentController@cache1');
Route::any('cache2', 'StudentController@cache2');
  • 修改 App/Http/Controllers/StudentController.php
<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Session;
use Illuminate\Support\Facades\Cache;		// 导入
use Illuminate\Support\Facades\Storage;
use App\Student;
use App\Jobs\SendEmail;
use Mail;

class StudentController extends Controller{


    public function cache1(){
        // put():保存对象到缓存中
        Cache::put('key1', 'val1', 10);

        // add():添加缓存,如果 key 存在添加失败,不存在添加成功
        $bool = Cache::add('key2', 'val2', 10);
        var_dump($bool);

        // forever():永久保存对象到缓存中
        Cache::forever('key3', 'val3');

        // has():判断 key 是否存在
        if(Cache::has('key1')){
            $val = Cache::get('key1');
            var_dump($val);
        }else{
            echo 'no key';
        }

    }

    public function cache2(){
        // get():从缓存中获取对象
        $val = Cache::get('key1');
        var_dump($val);

        // pull():把缓存取出之后删除
        $val = Cache::pull('key3');
        var_dump($val);

        // forget():从缓存中删除对象,删除成功返回 true
        $bool = Cache::forget('key1');
        var_dump($bool);

    } 
}
Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐