码迷,mamicode.com
首页 > Web开发 > 详细

PHP操作Memcached的各种数据方式

时间:2015-04-04 09:18:50      阅读:120      评论:0      收藏:0      [点我收藏+]

标签:memcached   缓存   

首先,在实现所说的东西之前,要先确定好这么三件事:

1:安装了Memcached。

2:Memcached支持自己php所用版本。

3:开启了Memcached服务,并打开了php.ini的Memcached模块

如说上述条件都满足了,那么我就说一下如何去用php操作:

为了较为清晰的说明,而且空说无凭,所以我统一在下面的额代码里面加入测试,其中包括了我的所有测试过程:

还要说一下,这里主要测试的是数据的CURD操作。

<?php
	//Memcached是面向对象来操作的
	
	$mem=new Memcache;		//创建memcache对象
	if(!$mem->connect('127.0.0.1',11211)){
		die("连接失败");	//退出
	}	//连接memcached,参数的IP地址,11211端口
	
	
	//增加一组数据:参数分别表示:键名-键值-压缩-保存时间
	/*
	//增加字符串
	if($mem->add('key1','北京',MEMCACHE_COMPRESSED,60)){
		echo "添加数据成功";
	}
	*/
	//增加数字
	/*
	if($mem->add('key1',123456,MEMCACHE_COMPRESSED,120)){
		echo "添加数字成功";
	}*/
	//添加数组
	/*
	$arr = array('北京','天津');
	if($mem->add('key1',$arr,MEMCACHE_COMPRESSED,120)){
		echo "添加数组成功".'<br/>';
	}
	*/
	//添加对象
	/*
	class Dog{
		public $name;
		public $age;
		public function __construct($name,$age){
			$this->name=$name;
			$this->age=$age;
		}
	}
	$dog1=new Dog('小白',40);
	if($mem->add('key1',$dog1,MEMCACHE_COMPRESSED,60)){
		echo "添加对象成功";
	}
	*/
	//添加空值(0,null,(),false,0.0, “0” 空数组,空对象)
	/*
	if($mem->add('key1',null,MEMCACHE_COMPRESSED,60)){
		echo "添加空值成功";
	}*/
	//添加资源类型
	/*
	$con=mysql_connect('localhost','root','toor');
	//var_dump($con);
	//事实说明Memcached不能够保存资源类型数据
	if(!$con){
		echo "添加资源失败";
	}else{
		if($mem->add('key1',$con,MEMCACHE_COMPRESSED,60)){
			echo "添加资源成功";
		}
	}
	*/
	//两种情况,键名不存在:就创建数据,反之修改
	/*
	if($mem->set('key1','上海',MEMCACHE_COMPRESSED,60)){
		echo "修改数据成功";
	}
	*/
	//查询数据,和控制台的方式相同,返回的是结果
	
	$value=$mem->get('key1');
	print_r($value);
	
?>
以上是php操作Memcached的各种数据方式,有两点要说

1:当保存输出对象数据的时候,如果在另一个页面去输出,会出现数据不完整的错误,可以引入类文件去解决。

2:实际开发中,可能需要进行序列化处理,这个会在我的下一篇博文介绍

PHP操作Memcached的各种数据方式

标签:memcached   缓存   

原文地址:http://blog.csdn.net/mycodedream/article/details/44859137

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!