ホームページ  >  記事  >  バックエンド開発  >  Redisシリーズ-php Redis拡張機能を介してRedisを使用する方法

Redisシリーズ-php Redis拡張機能を介してRedisを使用する方法

WBOY
WBOYオリジナル
2016-06-13 12:51:37806ブラウズ

Redis シリーズ - PHP は redis 拡張機能を通じてどのように redis を使用しますか?

これまでのブログを通じて、redis について一般的に理解できたはずです。ここでは、PHP がデータのために redis サーバーに接続する方法について説明します。読み書き?


1. PHP 拡張機能をインストールします

a) PHP 拡張機能 phpredis をインストールします:

[root@xsf002 tool]# git clone https://github.com/nicolasff/phpredis.git phpredis
[root@xsf002 tool]# cd phpredis/
[root@xsf002 phpredis]# /usr/local/php/bin/phpize   #<span style="text-indent: 20px;">假设 php目录:</span><span style="text-indent: 20px;">/usr/local/php</span>
[root@xsf002 phpredis]# ./configure --with-php-config=/usr/local/php/bin/php-config
[root@xsf002 phpredis]# make
[root@xsf002 phpredis]# make install
すべてがうまくいくと、次のようなプロンプトが表示されます。

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/
php 拡張ファイルのディレクトリに redis.so ファイルが存在します。

b) redis.so をロードします

php.ini ファイルに次の構成を追加します:

[redis]
extension=redis.so

Web サーバーを再起動し、phpinfo() をエコーすると、次の表示が表示されます:


2. 拡張機能

を介して Redis サーバーにアクセスします

PHP はデータにアクセスするために Redis サーバーをどのように使用しますか?これは、phpredis 拡張モジュールを使用して次の手順を実行するだけです:

1. Redis クラス [new redis()]

をインスタンス化します。

2. Redis クラスのメソッドを呼び出して Redis サーバーに接続します [connect, pconnect]

3. 接続オプションを設定する [setOption]

4. データの保存/取得

5. 接続を閉じます [閉じる]

デフォルトのオプションを使用する場合、ステップ 3 は必要ありません。以下のコード例を参照してください:

<?php
$redis = new Redis(); #实例化redis类
$redis->connect('127.0.0.1'); #连接服务器
$redis->set('key', 'hello '); #调用方法,设置string类型值
$redis->append('key', 'world'); #修改string类型值
echo $redis->get('key');  #获取redis key的值,并输出显示 
echo $redis->type('key'); #获取key 的数据类型
echo $redis->echo('will close...');# 输出字符串
$redis->close(); #关闭连接
上記のコードを通じて、基本的に単純な Redis アクセス操作を完了します。 Redis クラスのプロパティとメソッドをいくつか示します。

a) Redis サーバーに接続します:

  • connect: サーバーに接続
  • pconnect: 長時間接続
  • auth: 権限の検証
  • select: DB を選択します
  • close: 接続を閉じます
  • setOption: クライアント オプションを設定します
  • getOption: クライアント オプションを取得します
  • ping: redis サーバーに ping します
  • echo: 出力文字列

redis を頻繁に操作する場合、継続的な接続と終了はパフォーマンスに非常に負荷がかかることに注意してください。現時点では、長い接続を確立するには pconnect を使用することをお勧めします。

b) 文字列の読み取りおよび書き込み関数

  • append : 値の後に値を追加します
  • decr: キーの値をデクリメントします
  • incr : キーの値をインクリメントします
  • get: 値を取得
  • set: 値を設定
  • getSet: 値を設定value を返し、古い値を返します
  • mGet: 値をバッチで取得します
  • mSet: 値をバッチで設定します
  • strlen: 値の長さを取得します

注: バッチ操作を使用できる場合は、バッチ操作を使用して Redis データベースへの頻繁な接続のパフォーマンスを低下させるようにしてください

c) ハッシュ読み取りおよび書き込み関数

  • hDel: 複数のドメインを削除します
  • hExists: ハッシュ ドメインが存在するかどうかを確認します
  • hGet:ハッシュフィールドの値
  • hGetAll: すべてのフィールド値を取得
  • hIncrBy: ハッシュ int フィールドの値を増加します
  • hKeys: すべてのドメインのハッシュを取得します
  • hLen : ドメインの数を取得します
  • hMGet :ドメインの値を一括で取得
  • hMSet: ドメインの値を一括で設定
  • hSet: ドメインの値を設定
  • hVals : すべてのフィールド
の値を取得します

d) リストの読み取りおよび書き込み関数

  • lInsert: 要素の挿入
  • lLen: リストの長さ
  • lPop: 削除して最初の要素を取得 Color
  • lPush: 要素の挿入
  • lRem: 要素の削除
  • lSet: 要素の値を設定

e)セット

  • sAdd: 1 つ以上のメンバーを追加します
  • sIsMember: 含めるかどうか
  • sMembers: メンバーを取得
  • sMove: メンバーの移動
  • sPop: メンバーの削除
  • sRandMember: ランダムなメンバーの取得
  • sRem:
を削除します

f)ソートセット

  • zAdd: 1 つ以上の
  • zCard: メンバーの数
  • zIncrBy: メンバーのスコアを増分
  • zRange: インデックス範囲内のメンバーを返します
  • zRangeByScore: スコア範囲
  • zScore : メンバーのスコアを取得します
  • zRem: 1 人以上のメンバーを削除

詳細については、https://github.com/nicolasff/phpredisを参照してください。

http://redis.io/clients

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。