Memcahce(MC)系列(三)Memcached它PHP转让

由PHP转让Memcahce,首先,需要在server安装Memcache,如何安装Memcache这不是本文的重点,

大约memcache安装,谁的朋友有兴趣,请参阅这里:http://blog.csdn.net/xifeijian/article/details/22000173

 

以下用一个最简单的Demo,介绍使用怎样使用php来调用Memcahce。

一:安装memcache PHP模块

#wget http://pecl.php.net/get/memcache-2.2.4.tgz

tar zxvf memcache-2.2.4.tgz
cd memcache-2.2.4

 查找phpize路径

#whereis phpize,这里是/root/app/php-5.3.3/bin/phpize(一般在php安装路径的bin文件夹下)

 /root/app/php-5.3.3/bin/phpize
./configure --enable-memcache --with-php-config=/root/app/php-5.3.3/bin/php-config
make
make install

  在php.ini文件加入一行(/etc文件夹下)

   extension=memcache.so
  重新启动httpd
  #service httpd restart

  php里使用phpinfo()看到memcache相关说明信息,才说明memcached扩展安装好。
 
 注:假设仅使用php -m来查看php所载入的扩展。这个并不能表示扩展已经生效。 
 
   注意:

   安装完后可能会有相似这种提示:

   Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20050922/ 

   把这个记住,然后改动php.ini,把

   extension_dir = "./" 

   改动为

   extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20050922/"   

   并加入一行

   extension=memcache.so 

 
二:PHP调用memcached
自己写一个PHP程序測试一下
 
    <?

php $memcache = new Memcache; //创建一个memcache对象 $memcache->connect('localhost', 9023) or die ("Could not connect"); //连接Memcachedserver $memcache->set('key', 'Hello,XiFeiJian'); //设置一个变量到内存中。名称是key 值是Hello,XiFeiJian $get_value = $memcache->get('key'); //从内存中取出key的值 echo $get_value; ?

>

 

二:附:memcached经常使用操作
    <?php  
    //连接Memcache  
    $mem = new Memcache;  
    $mem->connect("localhost", 11211);  
    //保存数据  
    $mem->set('key1', 'This is first value', 0, 60);  
    $val = $mem->get('key1');  
    echo "Get key1 value: " . $val ."<br>";  
    //替换数据  
    $mem->replace('key1', 'This is replace value', 0, 60);  
    $val = $mem->get('key1');  
    echo "Get key1 value: " . $val . "<br>";  
    //保存数组数据  
    $arr = array('aaa', 'bbb', 'ccc', 'ddd');  
    $mem->set('key2', $arr, 0, 60);  
    $val2 = $mem->get('key2');  
    echo "Get key2 value: ";  
    print_r($val2);  
    echo "<br>";  
    //删除数据  
    $mem->delete('key1');  
    $val = $mem->get('key1');  
    echo "Get key1 value: " . $val . "<br>";  
    //清除全部数据  
    $mem->flush();  
    $val2 = $mem->get('key2');  
    echo "Get key2 value: ";  
    print_r($val2);  
    echo "<br>";  
    //关闭连接  
    $mem->close();  
    ?>  

版权声明:本文博客原创文章,博客,未经同意,不得转载。

原文地址:https://www.cnblogs.com/blfshiye/p/4641468.html