登录  /  注册

memcached的使用

php中文网
发布: 2016-07-28 08:27:44
原创
530人浏览过

基本使用方法

<?php /**
 * Created by PhpStorm.
 * User: raid
 * Date: 2016/7/6
 * Time: 12:03
 */

$m = new Memcached;
$arr = array(
    array(&#39;127.0.0.1&#39;, 11211),
    array(&#39;127.0.0.2&#39;, 11211),
);
$m->addServer('127.0.0.1', 11211);
print_r($m-&gt;getStats());
echo "<br>";
print_r($m-&gt;getVersion());
echo "<br>";


$data = array(
    'key' =&gt; 'value',
    'key2' =&gt; 'value2',
);
//$m-&gt;setMulti($data, 600);
$result = $m-&gt;getMulti(array('key', 'key2'));
$m-&gt;deleteMulti(array('key', 'key2'));
//print_r($result);
echo $m-&gt;get('key');

echo $m-&gt;getResultCode();
echo $m-&gt;getResultMessage();

//$m-&gt;add('mkey', 'mvalue', 600);
//$m-&gt;replace('mkey', 'mvalue2', 1);

//$m-&gt;flush();

//$m-&gt;set('num', 50, 600);

//$m-&gt;increment('num', 5);

$m-&gt;decrement('num', 5);

echo $m-&gt;get('num');

$m-&gt;flush();
登录后复制

封装类:

<?php /**
 * Created by PhpStorm.
 * User: raid
 * Date: 2016/7/6
 * Time: 19:25
 */
class Mem {
    //Memcached对象
    private $m;
    //对象类型
    private $type = &#39;Memcached&#39;;
    //缓存时间
    private $time = 0;
    //错误
    private $error;
    //是否开启调试模式
    private $debug = &#39;true&#39;;

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

    public function addServer($arr) {
        $this-&gt;m-&gt;addServers($arr);
    }

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

        }
    }

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

    private function get($key) {
        $ret = $this-&gt;m-&gt;get($key);
        if ($this-&gt;debug) {
            if ($this-&gt;m-&gt;getResultCode() != 0) {
                return false;
            }
        }

        return $ret;
    }

    /**
     * 删除
     * @param $key
     */
    private function delete($key) {
        $this-&gt;m-&gt;delete($key);
    }

    public function getError() {
        if ($this-&gt;error) {
            return $this-&gt;error;
        } else {
            return $this-&gt;m-&gt;getResultMessage();
        }
    }

    public function d($debug) {
        $this-&gt;debug = $debug;
    }



}
登录后复制

封装类的使用:

<?php /**
 * Created by PhpStorm.
 * User: raid
 * Date: 2016/7/6
 * Time: 19:06
 */

include &#39;Mem.class.php&#39;;

$m = new Mem();

$m->addServer(array(
    array('127.0.0.1', 11211),
));

//$m-&gt;s('key', 'value', 1800);
//
//$m-&gt;s('key', NULL);
//echo $m-&gt;s('key');
//echo $m-&gt;getError();

$m-&gt;s('test', 'testvalue', 0);
echo $m-&gt;s('test');
echo "<br>";
$m-&gt;s('test', NULL);
echo $m-&gt;s('test');
登录后复制

以上就介绍了 memcached的使用,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号