博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Redis使用基本套路
阅读量:7009 次
发布时间:2019-06-28

本文共 1675 字,大约阅读时间需要 5 分钟。

Redis的数据,通常都是来自于数据库。

存入Redis当中,可以快速的查询。不用每次都关联查询,然后其他处理什么的。

通常可以把一些,不经常变的数据存储其中。

避免数据变动,而Redis缓存数据不变,可以为缓存数据设置一个过期时间。

通常Redis存储的数据都是数组进行json加密,而取出的时候,进行json解密就可以了。

变量命名的时候,确保每个key都是唯一的。可以用冒号分割变量。

基础版本:

// 获取题目类型数据vendor('Func.Red');$red = Red::create();$red_result = $red->get('question:type:select');if (!$red_result) {    // 获取数据    $question_type_model = M('question_type');    $question_type_list = $question_type_model->where(['level'=>2])->order('pid asc,weight desc')->select();    $question_type_select = [];    foreach ($question_type_list as $k => $item) {        $question_type_select[$k]['id'] = $item['id'];        $question_type_select[$k]['name'] = $item['remark']."【".$item['short_name']."】";    }    // 存入Redis    $red->set('question:type:select',json_encode($question_type_select));} else {    $question_type_select = json_decode($red_result,true);}$this->assign('question_type_select',$question_type_select);

定时版本:

// 获取题目类型数据vendor('Func.Red');$red = Red::create();$red_result = $red->get('question:type:select');if (!$red_result) {    // 获取数据    $question_type_model = M('question_type');    $question_type_list = $question_type_model->where(['level'=>2])->order('pid asc,weight desc')->select();    $question_type_select = [];    foreach ($question_type_list as $k => $item) {        $question_type_select[$k]['id'] = $item['id'];        $question_type_select[$k]['name'] = $item['remark']."【".$item['short_name']."】";    }    // 存入Redis    $red->setEx('question:type:select',3600*24,json_encode($question_type_select));} else {    $question_type_select = json_decode($red_result,true);}$this->assign('question_type_select',$question_type_select);

一天有效。

转载地址:http://pxjtl.baihongyu.com/

你可能感兴趣的文章