php memcache实例,php中memcache基本操作实例_php实例

本文详细介绍了PHP中使用Memcache进行数据缓存的操作,包括连接服务器、添加、设置、替换、获取和删除键值对,以及获取缓存统计信息。示例还展示了如何结合MySQL实现数据的缓存策略,根据缓存是否存在决定是从缓存还是数据库中获取数据,并在必要时更新缓存。
摘要由CSDN通过智能技术生成

php中memcache 基本操作实例

memcache demo

connect($server_ip,$server_port);

$memcache->add("name1","user_name1",MEMCACHE_COMPRESSED,0);

$memcache->add("name2","user_name2",MEMCACHE_COMPRESSED,0);

$array1 = array('name1' => 'jiajiam1',

'age1'=>12,

'country'=>'china');

$memcache->add("other",$array1,MEMCACHE_COMPRESSED,20);

$memcache->set("name3","user_name3",MEMCACHE_COMPRESSED,0);

$memcache->replace("name1","user_name_relpace",MEMCACHE_COMPRESSED,0);

$memcache->replace("123","12345");

echo"name1:".$memcache->get("name1")."

";

$memcache->delete("name1");

echo"name1:".$memcache->get("name1")."

";

$array_get = array("name1","name2","name3");

$result_get = $memcache->get($array_get);

foreach ($result_get as $key => $value) {

echo"$key:--->$value

";

}

foreach ($memcache->getStats() as $key => $value) {

echo"$key:--->$value

";

};

echo"

";

foreach($memcache->getExtendedStats() as $key => $value) {

echo"$key:--->$value

";

}

$memcache->close();

?>

我们再来看个更加具体些的实例

connect('localhost', '11211');

$expires=15*60;

//check if cache exits

if(($value = $mem-> get($city)) != FALSE) {

echo "get key from memcache: "."

";

// $return=$mem->get($city);

// echo json_encode($return);

}//if

else {

$resultJson=fetch_data();

echo count($resultJson)."

";

if(count($resultJson)==1 || empty($resultJson)){

//从mysql中取值

echo "get key from mysql:"."

";

$query="select * from pm25";

$result=mysql_query ($query) ;

while ($row = mysql_fetch_assoc($result)){

$rows[]=$row;

}

//将获取的值数组存入memcache

for($i=0;$iset($k[$i], $v[$i], false, $expires);

}

// $return=$mem->get($city);

// echo json_encode($return);

}//if

else{

echo "get key from new_writed mysql:"."

";

write_db($resultJson);

$query="select * from pm25";

$result=mysql_query ($query) ;

while ($row = mysql_fetch_assoc($result)){

$rows[]=$row;

}

//write memcache

for($i=0;$iset($k[$i], $v[$i], false, $expires);

}

// $return=$mem->get($city);

// echo json_encode($return);

}//else

}//else

foreach ($city as $k=>$v){

$return[$k]=$mem->get($v);

}

echo json_encode($return);

function fetch_data() {

$url="http://www.example.com";

//$url="";

$data = http_get($url);

$getJson = json_decode($data, true);

return $getJson;

} //func fetch_data

function write_db($getJson){

$sql="DELETE FROM pm25";

mysql_query($sql);

//sort the json.txt

foreach ($getJson as $key => $row) {

$area[$key] = $row['area'];

$pm2_5[$key]= $row['pm2_5'];

}

array_multisort($area, SORT_ASC,$pm2_5,SORT_ASC,$getJson);

for($i=0;$iclose();

?>

以上所述就是本文的全部内容了,希望大家能够喜欢。

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:php中文网

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值