记录我工作学习生活中的点点滴滴......

memcache中set和replace方法的区别
发布于 Database
2012-03-30 11:29:56
6571
2

在memcache中replace和set在一定程度上作用是一致的,都是改变某个元素的值,但是之间略有不同。

我们来用例子说明

$mem=new Memcache; 
$mem->connect("localhost", 11211); 
//直接set 
$mem->set("mystr1", "this is a memcache test1!", MEMCACHE_COMPRESSED, 3600); 
echo $str=$mem->get("mystr1"); 
//直接replace 
$mem->replace("mystr2", "this is a memcache test2!", MEMCACHE_COMPRESSED, 3600); 
var_dump($str=$mem->get("mystr2")); 
//先add在replace 
$mem->add("mystr3", "this is a memcache test3!", MEMCACHE_COMPRESSED, 3600); 
echo $str=$mem->get("mystr3"); 
$mem->replace("mystr3", "this is a memcache test31!", MEMCACHE_COMPRESSED, 3600); 
echo $str=$mem->get("mystr31"); 
//先add在set 
$mem->add("mystr4", "this is a memcache test4!", MEMCACHE_COMPRESSED, 3600); 
echo $str=$mem->get("mystr4"); 
$mem->replace("mystr4", "this is a memcache test41!", MEMCACHE_COMPRESSED, 3600); 
echo $str=$mem->get("mystr41");

运行结果这里我们就不写出了,个人强烈建议你运行一下,这样可以加深印象!

最终的结论就是在对已有值的元素处理上两者是相同的,但是对于一个不存在的元素,set的作用就和add相当,replace则是只能对已经存在的元素进行处理



分享本文到:
除非特殊注明,本文版权归原作者所有,欢迎转载!转载请注明版权以及本文地址,谢谢。
转载保留版权:Pakey's BLog >>Database >>memcache中set和replace方法的区别
本文地址:http://www.pakey.net/blog/memcache-set-replace.html