关键字搜索十次存memcache

来源:互联网 发布:unity3d设置中文界面 编辑:程序博客网 时间:2024/05/14 15:50

需求:

写 一个关键词搜索 搜索十次存入memcache  十次以下读取数据库

实现思路:

memcache  键名为搜素关键词

首先根据搜索关键词 查询memcache中是否存有内容

没有内容的情况:

读取数据库 同时将1存入memcache

存有内容的情况:

判断memcache中的值小于等于9 : 递次加1 替换memcache

判断memcache中的值等于10 : 读取数据库 同时将查询数组存入memcache

搜索大于10次 : 即直接读取memcache

$name = $_GET['name'];$name=urldecode($name);//连接$mem=new Memcache;$mem->connect("localhost",11211);$val = $mem->get($name);if($val){if($val<=9){//搜索的次数小于等于9的话 搜索次数+1$val++;//替换数据$mem->replace($name,$val,0,60*60);//数据库读取$data = $this->db->like('content',$name)->get('hao123')->result_array();}else if ($val==10){//数据库读取$data = $this->db->like('content',$name)->get('hao123')->result_array();//替换数据$mem->replace($name,$data,0,60*60);}else{echo 'cache:';$data = $mem->get($name);}}else{echo 'database';//设定次数$mem->set($name,1,0,60*60);//数据库读取$data = $this->db->like('content',$name)->get('hao123')->result_array();}print_r($data);




0 0
原创粉丝点击