PHP模块memcached使用指南

yipeiwu_com6年前PHP代码库

1.添加扩展包

    php_memcache.dll

2.在PHP.INI添加

    extension=php_memcache.dll

3.程序

复制代码 代码如下:

<?php
    //创建一个mem对象实例
    $mem=new Memcache;
    if(!$mem->connect("10.18.110.213",11211)){
        die('连接失败!');
    }
    //增加
    //1.增加一个字串
/*    if($mem->set('key1',"beijing",MEMCACHE_COMPRESSED,60)){
        echo '添加ok';
    }*/
    //2.添加数值
/*    if($mem->set('key1',100,MEMCACHE_COMPRESSED,60)){
        echo '添加ok';
    }*/
    //3.添加数组
    //在添加数组是,根据需要. 希望序列号放入  ,
    //serialize<=>unserialize, 如果根据需要,也可以json_encode <=> json_decode
    $arr=array("bj",'tj');
    if($mem->set('key1',$arr,MEMCACHE_COMPRESSED,time()+31*3600*24)){
        echo '添加数组ok99111';
    }
    //4.添加对象
/*    class Dog{
        public $name;
        public $age;
        public function __construct($name,$age){
            $this->name=$name;
            $this->age=$age;
        }
    }
    $dog1=new Dog('小狗',50);
    if($mem->set('key1',$dog1,MEMCACHE_COMPRESSED,60)){
        echo '添加对象ok';
    }*/
    //5.添加null 布尔值
/*    if($mem->set('key1',false,MEMCACHE_COMPRESSED,60)){
        echo '添加布尔ok';
    }*/
    //6. 资源类型放入.
/*    $con=mysql_connect("127.0.0.1","root","root");
    if(!$con){
        die('连接数据库失败');
    }
    var_dump($con);
    echo "<br/>";
    if($mem->set('key1',$con,MEMCACHE_COMPRESSED,60)){
        echo '添加资源ok';
    }*/

    //查询
    $val=$mem->get('key1');
//修改
    //可以使用replace
    if($mem->replace("key11",'hello',MEMCACHE_COMPRESSED,60)){
        echo 'replace ok';
    }else{
        echo 'replace no ok';
    }

    //删除
    echo "<br/>";
    if($mem->delete('key14')){
        echo 'key14 删除';
    }else{
        echo 'key14不存在';
    }

总结:

1.      mem服务的数据不是同步的, 数据是分布的

2.      把什么数据放入到哪个memcached是由客户端的mem对象决定

3.      当执行addServer的时候,并不是立即去连接mem服务,而是通过计算,hash后才去决定连接哪个mem服务,因此当你大量加入服务器到连接池,没有多余开销

相关文章

php利用gd库为图片添加水印

php利用gd库为图片添加水印

本文实例为大家分享了php利用gd库为图片添加水印的方法,供大家参考,具体内容如下 <?php $dst_path = '1.jpg';//目标图片 $src_pat...

php操作(删除,提取,增加)zip文件方法详解

php读取zip文件(删除文件,提取文件,增加文件)实例 从zip压缩文件中提取文件 复制代码 代码如下: <?php /* php 从zip压缩文件中提取文件 */...

在PHP中使用反射技术的架构插件使用说明

反射API的插件方法是基于在运行时决定程序的功能来实现的,也就是说,它允许创建可选的接口方法,并在首次使用时检测到这部分接口方法,只有在插件中存在这部分接口的情况下,它们才会被用到. 假...

PHP异常处理定义与使用方法分析

本文实例讲述了PHP异常处理定义与使用方法。分享给大家供大家参考,具体如下: <?php //php5提供了基本的异常处理类,可直接使用 ,不需要自己再定义 // cl...

那些年我们错过的魔术方法(Magic Methods)

PHP 对象的一个优势是可以使用魔术方法,这些方法可以不需要修改外部代码而重写一个类的默认行为,这使得PHP 语法有更少的冗余性和更具有扩展性。这些方法很好识别,他们都是以双下划线(__...