zoukankan      html  css  js  c++  java
  • PHP Redis 普通封装类

    class redisInit {  
          
        private $redis; //redis对象  
          
        /** 
         * 初始化Redis 
         * $config = array( 
         *  'server' => '127.0.0.1' 服务器 
         *  'port'   => '6379' 端口号 
         * ) 
         * @param array $config 
         */  
        public function init($config = array()) {  
            if ($config['server'] == '')  $config['server'] = '127.0.0.1';  
            if ($config['port'] == '')  $config['port'] = '6379';  
            $this->redis = new Redis();  
            $this->redis->connect($config['server'], $config['port']);  
            return $this->redis;  
        }  
          
        /** 
         * 设置值 
         * @param string $key KEY名称 
         * @param string|array $value 获取得到的数据 
         * @param int $timeOut 时间 
         */  
        public function set($key, $value, $timeOut = 0) {  
            $value = json_encode($value, TRUE);  
            $retRes = $this->redis->set($key, $value);  
            if ($timeOut > 0) $this->redis->setTimeout($key, $timeOut);  
            return $retRes;  
        }  
      
        /** 
         * 通过KEY获取数据 
         * @param string $key KEY名称 
         */  
        public function get($key) {  
            $result = $this->redis->get($key);  
            return json_decode($result, TRUE);  
        }  
          
        /** 
         * 删除一条数据 
         * @param string $key KEY名称 
         */  
        public function delete($key) {  
            return $this->redis->delete($key);  
        }  
          
        /** 
         * 清空数据 
         */  
        public function flushAll() {  
            return $this->redis->flushAll();  
        }  
          
        /** 
         * 数据入队列 
         * @param string $key KEY名称 
         * @param string|array $value 获取得到的数据 
         * @param bool $right 是否从右边开始入 
         */  
        public function push($key, $value ,$right = true) {  
            $value = json_encode($value);  
            return $right ? $this->redis->rPush($key, $value) : $this->redis->lPush($key, $value);  
        }  
          
        /** 
         * 数据出队列 
         * @param string $key KEY名称 
         * @param bool $left 是否从左边开始出数据 
         */  
        public function pop($key , $left = true) {  
            $val = $left ? $this->redis->lPop($key) : $this->redis->rPop($key);  
            return json_decode($val);  
        }  
          
        /** 
         * 数据自增 
         * @param string $key KEY名称 
         */  
        public function increment($key) {  
            return $this->redis->incr($key);  
        }  
      
        /** 
         * 数据自减 
         * @param string $key KEY名称 
         */  
        public function decrement($key) {  
            return $this->redis->decr($key);  
        }  
          
        /** 
         * key是否存在,存在返回ture 
         * @param string $key KEY名称 
         */  
        public function exists($key) {  
            return $this->redis->exists($key);  
        }  
          
        /** 
         * 返回redis对象 
         * redis有非常多的操作方法,我们只封装了一部分 
         * 拿着这个对象就可以直接调用redis自身方法 
         */  
        public function redis() {  
            return $this->redis;  
        }  
    } 
    
  • 相关阅读:
    git warning: LF will be replaced by CRLF in 解决办法
    今天买了个pro,开始ios开发
    基于pyspark的mapreduce实现
    正则表达式中全部符号作用及解释
    CNN
    tensorboard使用及tensorflow各层权重系数输出
    DeepFM tensorflow实现
    FM详解
    sklearn计算auc需要注意的点
    矩阵压缩存储(可用于FM算法中的稀疏矩阵存储)
  • 原文地址:https://www.cnblogs.com/Mwsoft/p/5175239.html
Copyright © 2011-2022 走看看