esdghj 发表于 2014-7-25 08:51:37

PHP 对 memcache操作类

    <span style="font-size:18px;">class myMemcache {
      
      private $memcache;
      
      /**
         * 一般建议这2个值做成常量的形式
         */
      public function __construct($host = '192.102.1.8', $port = 6379) {
            $this->memcache = new Memcache();
            $this->memcache->connect($host, $port);
            return $this->memcache;
      }
      
      /**
         * add添加一个新key,但是如果 key已经在服务端存在,此操作会失败。
         * @param string $Key    KEY名称
         * @param string $value值----可以是数组,对象,单值
         * @param int $timelift 生存时间   add生存时间默认为0表示数据用不过期
         */
      public function add($key, $value, $timeLife) {
            if ($time > 0) {
                $retMes = $this->memcache->add($key, $value, MEMCACHE_COMPRESSED, $timeLife);
            } else {
                $retMes = $this->memcache->add($key, $value);
            }
            return $retMes;
      }
      
      /**
         * set設置一致key修改键名的值
         * @param string $key 键名
         * @param string $value 键值
         * @param int $timeLife 生命周期
         */
      public function set($key, $value, $timeLife) {
            if ($timeLife > 0) {
                $retMes = $this->memcache->set($key, $value, MEMCACHE_COMPRESSED, $timeLife);
            } else {
                $retMes = $this->memcache->set($key, $value);
            }
            return $retMes;
      }
      
      /**
         * 获取key
         * @param string$key 键名
         */
      public function get($key) {
            $retMes = $this->memcache->get($key);
            return $retMes;
      }
      
      /**
         * 删除单个key
         * @param string $key 键名
         */
      public function deleteKey($key) {
            $retMes = $this->memcache->delete($key);
            return $retMes;
      }
      
      /**
         * 删除所有key
         */
      public function deleteAll() {
            return $this->memcache->flush();
      }
         
      /**
         * 返回memcache对象
         * memcache我们只封装了常用的一部分
         * 拿着这个对象就可以直接调用memcache自身方法
         * eg:$memcache->memcacheOtherMethods()->getStats()   getStats方法没封
         */
      public function memcacheOtherMethods() {
            return $this->memcache;
      }
      
      /**
         * 释放
         */
      public function __destruct() {
            $this->memcache->close();
      }
      
    }
    </span>

页: [1]
查看完整版本: PHP 对 memcache操作类