ホームページ > バックエンド開発 > PHPチュートリアル > PHP操作redisキャッシュメソッド共有_PHPチュートリアル

PHP操作redisキャッシュメソッド共有_PHPチュートリアル

WBOY
リリース: 2016-07-13 09:52:06
オリジナル
864 人が閲覧しました

PHP で Redis キャッシュを操作する方法の共有

一般的に使用される PHP 操作ライブラリである memcache に加えて、私たちはメモリ キャッシュに関するもの、つまり Redis についてもよく知っているかもしれません。この PHP 技術記事を共有します。 phpを使ってメモリキャッシュツールライブラリであるredisを操作する方法についてです。

php redisキャッシュ操作

?

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

117

118

119

120

121

122

123

124

125

126

127

128

129

130

/**

* Redis キャッシュ操作

* @著者hxm

* @バージョン 1.0

* @since 2015.05.04

*/

RCache クラスは CacheFace を実装するオブジェクトを拡張します

{

private $redis = null //redis オブジェクト

;

private $sId = 1 //サーバーサービスID

;

private $con = null;//リンクリソース

/**

* Redisを初期化する

*

* @return オブジェクト

*/

パブリック関数 __construct()

{

if ( !class_exists('Redis') )

{

throw new QException('PHP 拡張機能が存在しません: Redis');

}

$this->redis = new Redis();

}

/**

* memcahce サービスへのリンク

*

* @アクセス非公開

* @param string $key キーワード

* @param string $value キャッシュコンテンツ

* @配列を返す

*/

プライベート関数 connect( $sid )

{

$file = $this->CacheFile();

$file が必要です;

if(! isset($cache) )

{

throw new QException('キャッシュ構成ファイルが存在しません'.$file);

}

$server = $cache[$this->cacheId];

$sid = isset($sid) == 0 ? $this->sId : $sid;//memcache サービスの選択

if (! $server[$sid])

{

throw new QException('現在の操作のキャッシュ サーバー構成ファイルが存在しません');

}

$host = $server[$sid]['host'];

$port = $server[$sid]['ポート'];

試してください{

$this->redis->connect( $host , $port );

} catch (例外 $e) {

exit('memecache 接続に失敗しました。エラー メッセージ: '. $e->getMessage());

}

}

/**

* ライトキャッシュ

*

* @アクセス非公開

* @param string $key キーワード

* @param string $value キャッシュコンテンツ

* @配列を返す

*/

パブリック関数 set( $key , $value , $sid , $expire = 0)

{

$data = $this->get($key, $sid) //キー値がすでに存在する場合

if( $data )

{

return $this->redis->getset( $key , $value);

} 他 {

return $this->redis->set( $key , $value);

}

}

/**

* 読み取りキャッシュ

*

* @アクセス非公開

* @param string $key キーワード

* @param int $sid どのmemcacheサーバーを選択するか

* @配列を返す

*/

パブリック関数 get( $key , $sid)

{

$this->connect( $sid );

return $this->redis->get($key);

}

/**

* 保存されているすべての要素をクリーン (削除) します

*

* @アクセス非公開

* @配列を返す

*/

パブリック関数 flash()

{

$this->connect();

return $this->redis->flushall();

}

/**

* キャッシュを削除します

*

* @アクセス非公開

* @param string $key キーワード

* @param int $sid どのmemcacheサーバーを選択するか

* @配列を返す

*/

パブリック関数remove( $key , $sid)

{

$this->connect();

return $this->redis->del($key);

}

/**

* デストラクター

* 最後にmemcacheを閉じます

*/

パブリック関数 __destruct()

{

if($this->redis)

{

$this->redis->close();

}

}

}

以上がこの記事の全内容ですが、皆さんに気に入っていただければ幸いです。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/1010438.html技術記事 PHP 操作の Redis キャッシュ メソッドの共有。一般的に使用される PHP 操作ライブラリである memcache に加えて、メモリ キャッシュについてもよく知っているかもしれません...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート