This article describes the basic operations and usage of Memcache in PHP. Share it with everyone for your reference. If you are in need, please come and study it.
Basic operation examples of memcache in php
?
|
"; $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(); ?> |
Let’s look at a more specific example
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 |
include('inc/common.inc.php');
if (! isset($city) || ! is_array($city) ) { exit; }
//print_r ($city);exit;
$mem = new Memcache(); $mem-> 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)){ //Get value from mysql echo "get key from mysql:"." $query="select * from pm25"; $result=mysql_query ($query) ; while ($row = mysql_fetch_assoc($result)){ $rows[]=$row; } //Save the obtained value array into memcache for($i=0;$i $k[$i]=$rows[$i]['city']; $v[$i]['city']=$rows[$i]['city']; $v[$i]['pm25']=$rows[$i]['pm25']; $mem -> set($k[$i], $v[$i], false, $expires); } // $return=$mem->get($city); // echo json_encode($return); }//if else{ echo "get key from new_written 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;$i $k[$i]=$rows[$i]['city']; $v[$i]['city']=$rows[$i]['city']; $v[$i]['pm25']=$rows[$i]['pm25']; $mem -> set($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;$i if($getJson[$i]['pm2_5']==0) $count=0; else $count=1; $sum=$getJson[$i]['pm2_5']; for($j=$i 1;$j if(strcmp($getJson[$j]['area'],$getJson[$i]['area'])==0 ){ if($getJson[$j]['pm2_5']==0 ){ continue; } else{ $count ; $sum =$getJson[$j]['pm2_5']; $pm2_5=$sum/$count; } } else{ //insert into mysql $result['city']=$getJson[$i]['area']; $result['pm25']=intval($pm2_5); $query="insert into pm25(city,pm25) values ('".$result['city']."',".$result['pm25'].")"; mysql_query($query); break; } } } return $getJson; }//func write_db $mem -> close(); ?> |
以上所述就是本文的全部内容了,希望大家能够喜欢。