1、Memcached类的介绍

详见PHP官方文档:点击访问

2、封装自己的Memcached类库

<?php

namespace Cache\Lib;

class MemCache
{
/**
* @var \Memcached
* 访问变量可以使用Memcached类库的其他方法
*/
public $_memcache; public function __construct($persistentId = null)
{
$cache = new \Memcached($persistentId); //判断服务器地址是否为空
if(!$cache->getServerList())
{
//一般从config文件中读取服务器地址
//添加服务器地址,去掉s只能添加一个服务器地址
$cache->addServers(
array(
//ip地址,端口,权重 | 权重越大,该服务越容易被选中
array('192.168.3.105', 11211, 60),
array('192.168.3.105', 11311, 40),
)
);
} //key 前缀的设置
$cache->setOption(\Memcached::OPT_PREFIX_KEY, 'imooc.'); $this->_memcache = $cache;
} /**
* 设置缓存
* @param string $key 缓存key
* @param string|array $value
* @param int $ttl 过期时间
* @return bool
*/
public function set($key, $value, $ttl = 3600)
{
if(empty($key) || empty($value) || is_numeric($ttl))
{
return false;
} return $this->_memcache->set($key, $value, $_SERVER['REQUEST_TIME'] + $ttl);
} /**
* 获取缓存
* @param $key
* @return bool|mixed
*/
public function get($key)
{
if(empty($key))
{
return false;
}
return $this->_memcache->get($key);
} /**
* 清空缓存处理
* @param $key
* @return bool
*/
public function clean($key)
{
if(empty($key))
{
return false;
} return $this->_memcache->delete($key);
} /**
* 自增处理
* @param $key
* @param $offset
* @return bool|int
*/
public function incr($key, $offset = 1)
{
if(empty($key))
{
return false;
}
$offset = intval($offset);
return $this->_memcache->increment($key, $offset);
} /**
* 自减少处理
* @param $key
* @param int $offset
* @return bool|int
*/
public function decr($key, $offset = 1)
{
if(empty($key))
{
return false;
}
$offset = intval($offset);
return $this->_memcache->decrement($key, $offset);
} /**
* add处理
* @param $key
* @param $value
* @param int $ttl
* @return bool
*/
public function add($key, $value, $ttl = 3600)
{
if(empty($key) || empty($value) || is_numeric($ttl))
{
return false;
} return $this->_memcache->add($key, $value, $_SERVER['REQUEST_TIME'] + $ttl);
} }

如有错误之处,请纠正。谢谢!

PHP和Memcached - 在PHP中的应用 - Memcached类介绍 - 封装自己的Memcached类库的更多相关文章

  1. C#中的Dictionary字典类介绍

      Dictionary字典类介绍 必须包含名空间System.Collection.Generic    Dictionary里面的每一个元素都是一个键值对(由二个元素组成:键和值)    键必须是 ...

  2. Android(java)学习笔记167:Java中操作文件的类介绍(File + IO流)

    1.File类:对硬盘上的文件和目录进行操作的类.    File类是文件和目录路径名抽象表现形式  构造函数:        1) File(String pathname)       Creat ...

  3. (转)C#中的Dictionary字典类介绍

    关键字:C# Dictionary 字典 作者:txw1958原文:http://www.cnblogs.com/txw1958/archive/2012/11/07/csharp-dictionar ...

  4. SpringMvc 中的实用工具类介绍(包括 ResponseEntity、 RestTemplate、WebUtils 等)

    此部分内容将包含 ResponseEntity. RestTemplate.WebUtils 等 1. ResponseEntity ① Sprring Mvc 中作为方法的返回值使用法 @Reque ...

  5. JPI中常使用的类介绍:

    Math类: java.lang包下的 final,不可被继承, 其中的方法和属性都是静态的 其构造方法私有化了,其他类不可以使用构造方法. 向上取整:Math.ceil(double d); 向下取 ...

  6. Android(java)学习笔记110:Java中操作文件的类介绍(File + IO流)

    1.File类:对硬盘上的文件和目录进行操作的类.    File类是文件和目录路径名抽象表现形式  构造函数:        1) File(String pathname)       Creat ...

  7. Key/Value之王Memcached初探:二、Memcached在.Net中的基本操作

    一.Memcached ClientLib For .Net 首先,不得不说,许多语言都实现了连接Memcached的客户端,其中以Perl.PHP为主. 仅仅memcached网站上列出的语言就有: ...

  8. 【转】 Key/Value之王Memcached初探:二、Memcached在.Net中的基本操作

    一.Memcached ClientLib For .Net 首先,不得不说,许多语言都实现了连接Memcached的客户端,其中以Perl.PHP为主. 仅仅memcached网站上列出的语言就有: ...

  9. 【转载】Memcached在.Net中的基本操作

    一.Memcached ClientLib For .Net 首先,不得不说,许多语言都实现了连接Memcached的客户端,其中以Perl.PHP为主. 仅仅memcached网站上列出的语言就有: ...

随机推荐

  1. python下载后出现python 已停止工作

    背景: 在执行IDLE或者在terminal窗口执行 python命令时出现如下提示,修改了防火墙关闭也不行,找不到解决办法? 如图: [解决方案] 1.卸载重装python,确保python版本与系 ...

  2. Smali语法基础

    Smali是什么 Smali是Android虚拟机的反汇编语言. 我们都知道,Android代码一般是用java编写的,执行java程序一般需要用到java虚拟机,在Android平台上也不例外,但是 ...

  3. 搭建vue-cli

    https://www.cnblogs.com/wisewrong/p/8570309.html https://www.jianshu.com/p/1ee1c410dc67

  4. @AUTORELEASEPOOL

    Swift 在内存管理上使用的是自动引用计数 (ARC) 的一套方法,在 ARC 中虽然不需要手动地调用像是 retain,release 或者是 autorelease 这样的方法来管理引用计数,但 ...

  5. ES里设置索引中倒排列表仅仅存文档ID——采用docs存储后可以降低pos文件和cfs文件大小

    index_options The index_options parameter controls what information is added to the inverted index, ...

  6. VM 15 永久激活密钥

      VMware Workstation 15 永久激活密钥   YG5H2-ANZ0H-M8ERY-TXZZZ-YKRV8   UG5J2-0ME12-M89WY-NPWXX-WQH88   UA5 ...

  7. sql查询表的所有字段和表字段对应的类型

    1.查询表的所有字段 select syscolumns.name from syscolumns where id=object_id('写上要查询的表名') 2.查询表的所有字段+表字段对应的类型 ...

  8. JavaScript——closures(待续)

    问答原文:How do JavaScript closures work?

  9. Qt编写自定义控件58-直方对称图

    一.前言 本控件也非原创控件,是参考网上的代码而来的,对称顾名思义就是将画布平均成上下两部分,将设置的值自动按照画布高度的一半作为参照高度进行绘制,然后增加动态过渡效果,有点类似于声音播放时候的频谱效 ...

  10. office激活方式,超简单

    只需要安装个小小的程序,亲测安全可靠 详情点击下方链接 https://blog.csdn.net/weixin_40941966/article/details/80872533