ITKeyword - 技术文章推荐分享

首页 > Memcache(MC)系列(三)Memcached之PHP调用

Memcache(MC)系列(三)Memcached之PHP调用

标签: memcahce, php,

相关推荐:PHP框架Yii系列教程(四):使用Memcache保存会话

1环境准备安装Memcached服务端:yum -y installmemcached.x86_64安装PHP-Memcache扩展:yum -y installphp-pecl-memcache.x86_64查看PHP-Memcache扩展是否安装成功:php -m | grepmemcache2启动Memcached服务分别在11211和11212

通过PHP调用Memcahce,首先需要在服务器上安装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.tgztar zxvf memcache-2.2.4.tgzcd 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-configmakemake 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"); //连接Memcached服务器

$memcache->set('key', 'Hello,

相关推荐:memcached - php数组缓存和memcache缓存 一道面试题,帮忙理下思路

我们的缓存分为两级,第一级只是一个PHP数组,有效范围是Request。而第二级是memcached。这么做的原因是,很多数据在一个Request周期内需要加载多次,这样可以减少memcached的网络请求。另外我们的框架也会尽可能的发送memcached的gets命令来获取数据,从而减

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();

?>

 

相关推荐:php5-memcached比php5-memcache速度略快一点

php5-memcached比php5-memcache速度略快一点php5-memcached和php5-memcache是两个php操作memcached的组件,他们是不同人开发的。php官网都列出了他们各自的使用方法:http://www.php.net/manual/en/book.memcache.php (安装使用:sudo apt-get install php5

通过PHP调用Memcahce,首先需要在服务器上安装Memcache,如何安装Memcache不是本文的重点,关于memcache的安装,有兴趣的朋友请参考这里:http://blog.csdn.net/xifeijian/article/details/2200...

------分隔线----------------------------