查看统一Redis操作类的源代码
←
统一Redis操作类
跳转至:
导航
、
搜索
因为以下原因,你没有权限编辑本页:
你刚才请求的操作只对属于该用户组的用户开放:
用户
您可以查看并复制此页面的源代码:
==开发说明== 在经过一次redis的升级后,发现目前在前后台代码中有很多不同的redis类库调用,每个封装的方法也不一致,给后续维护带来了很多的不便,现统一编写一个统一调用类,在后续开发中 必须强制使用 ==适用范围== 目前只在前后台代码中(fmb.dianping fmb.admin)进行了代码封装,其他代码库中的封装可以参照进行 ==实现过程== 在config目录中新增了统一配置信息 <source lang='php'> //redis统一配置 $config['redis_config'] = array( 'host' => "192.168.0.2", 'port' => 6379, 'pass' =>fmb_decode('TDlSUVFpcktPOWRp'), ); </source> 在libraries中新增了Redis类,该类的主要意图是从phpredis扩展中的Redis类继承,封装了连接参数,只需要实现特殊定制方法,其他原生方法就只需调用即可,无需一一对应方法编写 原生redis扩展提供的方法参考:http://www.cnblogs.com/zcy_soft/archive/2012/09/21/2697006.html <source lang='php'> <?php // /////////////////////////////////////////////////// // Copyright(c) 2016,父母邦,帮父母 // 日 期:2016年11月18日 // 作 者:卢少锦 // E-mail :shaojin.lu@fumubang.com // 文件名 :Redis.php // 创建时间:上午10:54:46 // 编 码:UTF-8 // 摘 要:统一一份redis调用与执行,通过从扩展的Redis类继承 // /////////////////////////////////////////////////// class CI_Redis extends Redis{ /** * 构造函数,从扩展类进行继承 */ public function __construct(){ parent::__construct(); //引入CI对象 $CI = & get_instance(); $config = $CI->config->item('redis_config'); $host = $config['host'];//主机 $port = $config['port'];//端口号 $pass = $config['pass'];//授权密码 parent::connect($host,$port); if(!empty($pass)){ //如果有授权机制就需要启动 parent::auth($pass); } } //select操作采用最原始的方法设置 //本身提供的方法如下: //参考地址:http://www.cnblogs.com/zcy_soft/archive/2012/09/21/2697006.html /** * 封装一个app消息推送统一发送接口 * @param array $msgbody */ public function app_msg_push($msgbody=array()){ $this->select(1);//确保与处理的通道一致 //消息编码 $msgcontent=rawurlencode(json_encode($msgbody)); $this->lpush("msg_queue_list","app_msg-push-".$msgcontent); } /** * 一个统一的推送消息的方法 * @param string $controller 控制器名 * @param string $method 方法名 * @param array $msgbody 消息体 */ public function to_push_msg($controller="",$method="",$msgbody=array()){ $this->select(1);//确保与处理的通道一致 //消息编码 $msgcontent=rawurlencode(json_encode($msgbody)); $this->lpush("msg_queue_list",$controller."-".$method."-".$msgcontent); } } ?> </source> ==调用方法== <source lang='php'> $this->load->library("redis",null,"redis"); $this->redis->select(1);//如果需要设定使用的库,就需要加上这行代码 $this->redis->set("test","xxxx"); print_r($this->redis->get("test")."\n"); //其他的原生调用方法就只需要这么弄就行,$this->redis->原生方法 </source>
返回
统一Redis操作类
。
导航菜单
个人工具
创建账户
登录
名字空间
页面
讨论
变种
查看
阅读
查看源代码
查看历史
操作
搜索
导航
wiki首页
API文档说明
数据结构变更
技术开发文档
市场相关文档
产品相关文档
前端相关文档
测试相关文档
运维相关文档
编辑运营文档
入职帮助手册
周末值班安排
开发小组规范
数据查询文档
知识分享计划
wiki语法手册
客户端相关文档
工具箱
链入页面
相关更改
特殊页面
页面信息