public function actionShow() { $page=isset($_GET['page'])?$_GET['page']:1; $query = goods::find(); $countQuery = clone $query; $pages = new Pagination(['totalCount' => $countQuery->count(),'pageSize'=>5]); $models = $query->offset($pages->offset) ->limit($pages->limit) ->asArray() ->all(); $redis= new \Redis(); $redis->pconnect("127.0.0.1","6379"); $redis->select(2); if($redis->hlen("$page"."0")<=0){ foreach($models as $key=>$v){ $redis->hmset("$page"."$key",$v); } return $this->render('show', [ 'models' => $models, 'pages' => $pages, 'msg' =>'数据库取值', ]); }else{ foreach($models as $key=>$v){ $b[]=$redis->hmget("$page"."$key",["id","goods_name","goods_stock","goods_price","goods_img","goods_visit"]); } return $this->render('show', [ 'models' => $b, 'pages' => $pages, 'msg' =>'redis取值', ]); } }
上边代码 加黑 斜体 能够从手册复制 相信各位会改一些须要改为和本身代码一致的地方redis
接下来 引入redis 类数据库
$page 是须要本身写 从路由上接一下本身的页码数组
$models 里存放的是全部数据this
经过循环 把一个个一维数组 存入redisspa
须要的时候 一个个取出 而后放入一个数组 变成二维数组 从而能够正常使用code