php当中的memcache应用
php当中的memcache应用
发布时间:2013-02-22 09:55:06来源:评论:】
所需环境:php 5.3.3apache 2.2.7mysql 5.5.8解压Memcached_1.2.5文档,cmd下执行memcached.exe -d -install将php5.3_vc6_memcachedll文档解压,将php_memcache.dll文件复制到php安装目录的ext文件目录中。...
所需环境:
php 5.3.3
apache 2.2.7
mysql 5.5.8
解压Memcached_1.2.5文档,cmd下执行memcached.exe -d -install
将php5.3_vc6_memcachedll文档解压,将php_memcache.dll文件复制到php安装目录的ext文件目录中。
然后在php.ini 当中填上这句话:extension="php_memcache.dll"
在phpinfo()下查看,是否引用了memcache扩展。
测试代码:
<?php
//连接
$mem=newMemcache;
$mem->connect("127.0.0.1",11211);
//保存数据
$mem->set('key1','Thisisfirstvalue',0,60);
$val=$mem->get('key1');
echo"Getkey1value:".$val."<br/>";
//替换数据
$mem->replace('key1','Thisisreplacevalue',0,60);
$val=$mem->get('key1');
echo"Getkey1value:".$val."<br/>";
//保存数组
$arr=array('aaa','bbb','ccc','ddd');
$mem->set('key2',$arr,0,60);
$val2=$mem->get('key2');
echo"Getkey2value:";
print_r($val2);
echo"<br/>";
//删除数据
$mem->delete('key1');
$val=$mem->get('key1');
echo"Getkey1value:".$val."<br/>";
//清除所有数据
$mem->flush();
$val2=$mem->get('key2');
echo"Getkey2value:";
print_r($val2);
echo"<br/>";
//关闭连接
$mem->close();
$memcachehost='192.168.10.1';
$memcacheport=11211;
$memcachelife=60;
$memcache=newMemcache;
$memcache->connect($memcachehost,$memcacheport)ordie("Couldnotconnect");
$query="select*fromuserlimit10";
$key=md5($query);
if(!$memcache->get($key))
{
$conn=mysql_connect("192.168.30.1","root","passwd");
mysql_select_db(users);
$result=mysql_query($query);
while($row=mysql_fetch_assoc($result))
{
$arr[]=$row;
}
$f='db';
$memcache->add($key,serialize($arr),0,30);
$data=$arr;
}
else{
$f='mem';
$data_mem=$memcache->get($key);
$data=unserialize($data_mem);
}
echo$f;
echo"";
//print_r($data);
foreach($dataas$a)
{
echo$a[user_id]._.$a[email];
echo"";
}
?>
新闻系统的应用:
//==============memcache
$memcachehost='127.0.0.1';
$memcacheport=11211;
$memcachelife=60;
$memcache=newMemcache;
$memcache->connect($memcachehost,$memcacheport)ordie("Couldnotconnect");
//==============新闻
$sql="SELECTid,title,left(title,16)asbiaoti,date_timeFROM`p_newsbase`whereshenhe='1'orderbyidDESClimit7";
$query=$db->query($sql);
$key=md5($query);
while($row_news=$db->fetch_array($query)){
$str=$row_news['biaoti'].$db->time_out($row_news['date_time']);
$sm_news[]=array("name"=>$str,"title"=>$row_news['title'],"id"=>$row_news['id'],"date_time"=>$row_news['date_time']);
}
if(!$memcache->get($key)){
$memcache->add($key,serialize($sm_news),0,$memcachelife);
}else{
$data_mem=$memcache->get($key);
$sm_news=unserialize($data_mem);
}
$smarty->assign("sm_news",$sm_news);
(责任编辑:)
本文关键字:
上一篇:NetBeans IDE 7.2.1 for php安装后,主界面是乱码的解决方法
下一篇:
分享到:
最新资讯
热门内容