Heim > php教程 > php手册 > php中memcache 基本操作实例

php中memcache 基本操作实例

WBOY
Freigeben: 2016-06-13 09:04:30
Original
1076 Leute haben es durchsucht

php中memcache 基本操作实例

   本文实例讲述了PHP中Memcache的基本操作及用法。分享给大家供大家参考。有需要的小伙伴快来研究下吧。

  php中memcache 基本操作实例

  ?

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

memcache demo

$server_ip = '127.0.0.1';

$server_port = 11211;

 

$memcache = new Memcache();

$memcache->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();

?>

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

  ?

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)){

//从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;$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:"."
";

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();

?>

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

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage