PHP完毕的Redis多库选取作用单例类_php技艺_脚本之家

2019-11-26 16:07栏目:龙竞技官网
TAG:

正文实例呈报了PHP达成的Redis多库接纳功能单例类。分享给我们供我们参照他事他说加以考察,具体如下:

本文实例陈说了php达成的redis缓存类定义与利用方式。分享给大家供大家参谋,具体如下:

前言

php+redis缓存类

qq群里有同学问redis怎么样进展多库选取,用php达成了弹指间,还望各位多多辅导

host = "127.0.0.1"; $this->port = "6379"; $redis = new Redis(); $redis->pconnect($this->host,$this->port); $this->redis=$redis; $this->cacheid = $this->getcacheid(); $this->lifetime = $lifetime; $this->data=$redis->hMGet($this->cacheid, array('content','creattime')); //print_r; //print_r; } /** * 检查缓存是否有效 */ private function isvalid(){ $data=$this->data; if  return false; if  - $data['creattime'] > $this->lifetime) return false; return true; } /** * 写入缓存 * $mode == 0 , 以浏览器缓存的方式取得页面内容 */ public function write { switch  { case 0: $content = ob_get_contents(); break; default: break; } ob_end_flush(); try { $this->redis->hMset($this->cacheid, array('content'=>$content,'creattime'=>time; $this->redis->expireAt($this->cacheid, time; } catch  { $this->error; } } /** * 加载缓存 * exit() 载入缓存后终止原页面程序的执行,缓存无效则运行原页面程序生成缓存 * ob_start() 开启浏览器缓存用于在页面结尾处取得页面内容 */ public function load() { if  { echo $this->data['content']; exit(); } else { ob_start(); } } /** * 清除缓存 */ public function clean() { try { $this->redis->hDel($this->cacheid, array('content','creattime')); } catch  { $this->error; } } /** * 取得缓存文件路径 */ private function getcacheid() { return $this->dir.md5.$this->ext; } /** * 取得当前页面完整url */ private function geturl() { $url = ''; if (isset($_SERVER['REQUEST_URI'])) { $url = $_SERVER['REQUEST_URI']; } else { $url = $_SERVER['Php_SELF']; $url .= empty($_SERVER['QUERY_STRING'])?'':'?'.$_SERVER['QUERY_STRING']; } return $url; } /** * 输出错误信息 */ private function error { echo ''.$str.''; }}//用法:// require_once;// $cache = new redisCache; //设置缓存生存期// if  $cache->clean();// else $cache->load(); //装载缓存,缓存有效则不执行以下页面代码// //页面代码开始// //页面代码结束// $cache->write(); //首次运行或缓存过期,生成缓存?>

代码

越多关于PHP相关内容感兴趣的读者可查看本站专项论题:《php+redis数据库程序设计本领总括》、《php面向对象程序设计入门教程》、《PHP基本语法入门教程》、《PHP数组操作技巧大全》、《php字符串用法总括》、《php+mysql数据库操作入门教程》及《php何足为奇数据库操作技巧汇总》

版权声明:本文由龙竞技官网发布于龙竞技官网,转载请注明出处:PHP完毕的Redis多库选取作用单例类_php技艺_脚本之家