Mem类代码:
class Mem
{
    //类型是memcache或memcached
    private $type = 'Memcached';

    //会话
    private $m;
    //缓存时间,0代表永久
    private $time = 0;
    //错误信息
    private $error;
    //调试模式
    private $debug = 'true';

    public function __construct()
    {
        if (!class_exists($this->type)) 
        {
            $this->error = 'No '.$this->type;
            return false;
        }
        else
        {
            $this->m = new $this->type;
        }
    }

    //添加服务器
    //$arr应该为数组
    public function addServer($arr)
    {
        $this->m->addServers($arr);
    }

    //数据操作
    public function s($key, $value = '', $time = 0)
    {
        $number = func_num_args();
        if($number == 1)
        {
            //get
            return $this->get($key);
        }
        else if ($number >= 2) 
        {
            if ($value === NULL) 
            {
                //delete
                $this->delete($key);
            }
            else
            {
                //set
                $this->set($key, $value, $time);
            }
        }
    }

    //set
    private function set($key, $value, $time  = 0)
    {
        if ($time === NULL) 
        {
            $time = $this->time;
        }
        $this->m->set($key, $value, $time);
        if ($this->debug) 
        {
             if ($this->m->getResultCode() != 0) 
            {
                return false;
            }
        }
    }

    //get
    private function get($key)
    {
        $result = $this->m->get($key);
        if ($this->debug) 
        {
            if ($this->m->getResultCode() != 0) 
            {
                return false;
            }
            else 
            {
                return $result;
            }
        }
        else 
        {
            return $result;
        }
    }

    //delete
    private function delete($key)
    {
        $this->m->delete($key);
    }

    //获取错误信息
    public function getError()
    {
        if($this->error)
        {
            return $this->error;
        }
        else
        {
            return $this->m->getResultMessage();
        }
    }
}


Mem类测试代码:
 

自己的memcache类的更多相关文章

  1. memcache类的扩展函数

    Memcache — Memcache类 /****连接****/1.Memcache::connect – 创建一个Memcache对象语法:bool Memcache::connect ( str ...

  2. php 封装memcache类

    <?php /*  * memcache类   */ class Memcacheds{     //声明静态成员变量     private static $m = null;     pri ...

  3. PHP脚本memcache类的源码

    <?php /**  * @example $mem = new Memcached();  * @example $getCache = $mem->get('test');  * @e ...

  4. Memcache类

    class Memcache{ private static $mem = null; public function mem_create(){ self::$mem = new \Memcache ...

  5. 如何在腾讯开放平台的云服务器上安装php和memcache 一

    由于被通知腾讯的CEE要关闭了,必须自己切换到服务器,自己装php.烦到一个B. 首先找到官方wiki: http://wiki.qcloud.com/wiki/SUSE%E7%8E%AF%E5%A2 ...

  6. php的memcache安装,在window10下面

    1.memcached-win对应得安装包 2.解压,可以放到任意目录,以管理员身份打开cmd 3.在安装的目录下面,执行如下命令 memcached.exe -d install 安装 Memcac ...

  7. php项目中使用memcache

    memcache为分布式内存缓存系统,通过在内存中存取数据和对象减少对数据库的访问从而减轻数据库的负载,memcache分为客户端和服务端,服务端为C实现,有现成的服务端应用程序,无需开发,只需要配置 ...

  8. linux下memcache的运用,和php结合小案例。

    由于是采用脚本安装的memache,所以软件的依赖关系我就不操心了,脚本已经帮我装好了和php的关联关系,实在是很省心.后续如果有需要,我会针对windows和linux各写一个安装和配置的说明,一来 ...

  9. php Memcache/Memcached操作手册

    php Memcache/Memcached使用教程 Memcache和Memcached 其实是一个东西,只是php中要是用的扩展不一样, 2009年左右有人丰富memcache的用法和性能,编写了 ...

随机推荐

  1. 使用Python登录Github网站

    在下面的代码中, 展示了使用Python脚本登录Github的方法. 如果需要登录别的网站,那么请使用Chrome的Inspect的功能寻找到目标的object,对代码进行替换. 代码先登录了gith ...

  2. Nginx反向代理WebSocket

    http { upstream websocket { server 192.168.1.1:8010; } server { listen 8020; location / { proxy_pass ...

  3. 关于Android中EditText自动获取焦点并弹出键盘的相关设置

    在android开发中,关于EditText自动获取焦点弹出键盘,我们可能又是会有让键盘自动弹出的需求,有时可能又会有不想让键盘自动弹出的需求,下面是我所总结的两种方法: 需求:EditText自动获 ...

  4. Android中Bundle和Intent的区别

    Bundle的作用,以及和Intent的区别: 一.Bundle: A mapping from String values to various Parcelable types 键值对的集合 类继 ...

  5. 基于Python使用Redis的一些想法和建议

    目录 1关于Redis使用的一点想法 1.1进行缓存前,需考虑 1.2进行缓存后,需考虑 1.3缓存使用一段时间后 2编写Redis数据库层规范建议 2.1选择适合的redis客户端 2.2规范化定义 ...

  6. Windows下如何更新 node.js

    因为在Windows下是没有n模块的并不支持npm install -g n  n latest更新,所以只能老老实实安装 1.在Path环境变量下查看自己的node.js安装路径 计算机-属性-高级 ...

  7. Oracle 12c pdb的数据泵导入导出

    12c推出了可插拔数据库,在一个容器cdb中以多租户的形式同时存在多个数据库pdb.在为pdb做数据泵导入导出时和传统的数据库有少许不同.           1,需要为pdb添加tansnames ...

  8. 视觉SLAM中的数学基础 第三篇 李群与李代数

    视觉SLAM中的数学基础 第三篇 李群与李代数 前言 在SLAM中,除了表达3D旋转与位移之外,我们还要对它们进行估计,因为SLAM整个过程就是在不断地估计机器人的位姿与地图.为了做这件事,需要对变换 ...

  9. win32 进程崩溃时禁止弹出错误对话框

    在程序初始化的时候加入以下代码即可: SetErrorMode(SEM_FAILCRITICALERRORS | SEM_NOGPFAULTERRORBOX);    _set_abort_behav ...

  10. .NET CORE MYSQL 微信小程序 HTTPS 随笔

    今天一天都没有撸码,没写BUG没改BUG,整一天都在弄那个微信小程序的配置了..唉.. 一个项目用的微信小程序,界面做出来了,就等着AJAX取网络数据后再显示到界面上了,查了下文档, 小程序取网络数据 ...