>  기사  >  데이터 베이스  >  PHP对memcache操作类

PHP对memcache操作类

WBOY
WBOY원래의
2016-06-07 15:59:111063검색

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);

<span style="font-size:18px;">class myMemcache {

    private $memcache;

    /**
     * 一般建议这2个值做成常量的形式
     */
    public function __construct($host = &#39;192.102.1.8&#39;, $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>

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.