Memcache basic action instances in PHP
Let's look at a more specific example
<?php 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: '. '
<br/> ";
$return = $mem->get ($city);
echo Json_encode ($return);
}//if else {$resultJson =fetch_data (); echo Count ($resultJson).
<br/> "; if (count ($resultJson) ==1 | | empty ($resultJson)) {//from MySQL value echo "Get key from MySQL:". "
<br/> ";
$query = "SELECT * from PM25";
$result =mysql_query ($query);
while ($row = Mysql_fetch_assoc ($result)) {$rows []= $row;
The array of acquired values is stored in memcache for ($i =0 $i <count ($rows), $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_writed MySQL:".
<br/> ";
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 <count ($rows); $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 '];
$PM 2_5[$key]= $row [' pm2_5 ']; } Array_multisoRT ($area, SORT_ASC, $pm 2_5,sort_asc, $getJson);
For ($i =0 $i <count ($getJson)-1; $i + +) {if ($getJson [$i] [' pm2_5 ']==0] $count = 0;
else $count = 1;
$sum = $getJson [$i] [' pm2_5 ']; for ($j = $i +1; $j <count ($getJson); $j + +, $i + +) {if strcmp ($getJson [$j] [' area '], $getJson [$i]] ==0) {if ($
getjson[$j] [' pm2_5 ']==0) {continue;
} else{$count + +;
$sum + + $getJson [$j] [' pm2_5 '];
$PM 2_5= $sum/$count;
} else{//insert into the MySQL $result [' City ']= $getJson [$i] [' area '];
$result [' Pm25 ']=intval ($pm 2_5);
$query = "INSERT into PM25 (CITY,PM25) VALUES ('". $result [' City ']. "'," $result [' pm25 ']. ")";
mysql_query ($query);
Break
}} return $getJson;
}//func write_db $mem-> Close ();?>
The above is the entire contents of this article, I hope you can enjoy.