Heim  >  Artikel  >  Datenbank  >  PHP对memcache操作类

PHP对memcache操作类

WBOY
WBOYOriginal
2016-06-07 15:59:111026Durchsuche

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>

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:enq:TT–contention等待事件Nächster Artikel:单一目的聚集操作