zoukankan      html  css  js  c++  java
  • PHP脚本memcache类的源码

    <?php
    /**
     * @example $mem = new Memcached();
     * @example $getCache = $mem->get('test');
     * @example MEMCACHE_HOST 主机
     * @example MEMCACHE_PORT 端口
     * @example MEMCACHE_TIMEOUT 缓存时间
     */
    class Memcached {
       
        private $memcache = null;
       
        /**
         * @desc 构造函数
         */
        public function __construct()
        {
            $this->memcache = new Memcache;
            $this->memcache->connect(MEMCACHE_HOST, MEMCACHE_PORT, MEMCACHE_TIMEOUT);
        }
           
        /**
         * 兼容php4
         */
        public function Memcached()
        {   
            $this->__construct();
        }
           
        /**
         * @desc 根据key获取Memcache的值
         * @param string $name key名称
         * @return array or string
         */
        public function get($name,$isJson = true)
        {
            $value = $this->memcache->get($name);
            if($isJson)
                $value = json_decode($value, true);
            return $value;
        }
       
        /**
         * 设置缓存,如果存在就更新,不存在则添加,如果成功则返回 TRUE,失败则返回 FALSE。
         * @param string $name key名称
         * @param array or array $value value值
         * @param boolean $ttl 是否压缩
         * @param int $ext1 用来设置一个过期自动销毁的时间
         * @return boolean 
         */
        public function set($name, $value, $ext1 = false, $ttl= 0)
        {
            return $this->memcache->set($name, $value, $ext1, $ttl);
        }
       
        /**
         * 添加缓存,如果成功则返回 TRUE,失败则返回 FALSE。
         * @param string $name key名称
         * @param array or array $value value值
         * @param boolean $ttl 是否压缩
         * @param int $ext1 用来设置一个过期自动销毁的时间
         * @return boolean 
         */
        public function add($name, $value, $ext1 = false, $ttl= 0)
        {   
            return $this->memcache->add($name, $value , $ext1, $ttl);
        }
       
         /**
         * @desc 删除缓存,如果成功则返回 TRUE,失败则返回 FALSE。
         * @param string $name key名称
         * @return boolean 
         */
        public function delete($name)
        {   
            return $this->memcache->delete($name);
        }
           
        /**
         * @desc 关闭一个Memcache对象
         * @return blloean
         */
        public function close()
        {   
            return $this->memcache->close();
        }
       
        /**
         * @desc Increment item's value (加法操作)
         * @param string $name
         * @param int $value  Increment the item by value . Optional and defaults to 1.
         * @return type
         */
        public function increment($name , $value)
        {   
            return $this->memcache->increment($name, $vlaue);
        }
           
        /**
         * @desc decrement item's value (减法操作)
         * @param string $name
         * @param int $value  decrement the item by value . Optional and defaults to 1.
         * @return type
         */
        public function decrement($name , $value)
        {   
            return $this->memcache->decrement($name, $vlaue);
        }
           
        /**
         * @desc 获取进程池中所有进程的运行系统统计
         * @return array
         */
        public function getExtendedStats()
        {   
            return $this->memcache->getExtendedStats();
        }
           
        /**
         * @desc 返回服务器的一些运行统计信息
         * @return array
         */
        public function getStats()
        {   
            return $this->memcache->getStats();
        }
       
        /**
         * @desc 清空缓存,如果成功则返回 TRUE,失败则返回 FALSE。
         * @return boolean
         */
        public function flush()
        {   
            return $this->memcache->flush();
        }
    }
    ?>
  • 相关阅读:
    Codeforces 959 E Mahmoud and Ehab and the xor-MST
    LightOj 1336 Sigma Function
    某考试 T1 sigfib
    [BOI2007] Sequence
    UOJ 41. 矩阵变换
    [BOI2007] Mokia
    SPOJ 26108 TRENDGCD
    bzoj3545: [ONTAK2010]Peaks
    bzoj3910: 火车
    bzoj1185: [HNOI2007]最小矩形覆盖
  • 原文地址:https://www.cnblogs.com/jthb/p/4130985.html
Copyright © 2011-2022 走看看