PHP-redis中国語ドキュメント紹介_PHPチュートリアル

WBOY
リリース: 2016-07-21 15:12:51
オリジナル
844 人が閲覧しました

phpredis是php的一个扩展,效率是相当高有链表排序功能,对创建内存级的模块业务关系

很有用;以下是redis官方提供的命令使用技巧:

下载地址如下:

https://github.com/owlient/phpredis (redis 2.0.4 をサポート)

Redis::__constructConstructor
$redis = new Redis();

connect, open Redis サービスをリンク
パラメータ
host
: 文字列、サービスアドレス
port
: int、ポート番号
timeout
: float、リンク期間(オプション、デフォルトは0、リンク時間に制限なし)
注: redis.confにも時間があります、デフォルトは300です

pconnect、popen 自動的に閉じられないリンク
上記参照

setOption redisモードを設定します

getOption モードセットを表示しますby redis

ping 接続状況を確認する

get
特定のキーの値(文字列値)を取得する
キーが存在しない場合はfalseを返す

set
キーと値を書き込む( string value)
書き込みが成功したら、return ture

setex 生存時間付きの値を書き込む
$redis->setex('key', 3600, 'value') // キー→値を設定、 1h TTL.

setnx
重複しているかどうかを判断し、値を書き込む
$redis->setnx('key', 'value');
$redis->setnx('key', 'value' );

delete 指定された key の値を削除します
削除されたキーの数 (long 整数) を返します
$redis->delete('key1', 'key2');
$redis->delete( array('key3', 'key4', 'key5'));

ttl
キーの有効期限を取得します

persist
有効期限が切れたキーを削除します
キーの有効期限が切れた場合 true if有効期限はありません false

mset (redis バージョン 1.1 以降でのみ利用可能)
同時に複数のキーに値を割り当てます
$redis->mset(array('key0' => 'value0 ', 'key1' => 'value1'));



multi、exec、discardトランザクションモードを開始または終了します
パラメータはRedis::MULTI
またはRedis::PIPELINEです。 Redis::MULTIですRedis::MULTI: 複数の操作を1つのトランザクションとして実行します
Redis::PIPELINE: (複数の) 実行コマンドをサーバーに簡単かつ高速に送信できますが、原子性の保証はありません
discard: トランザクションを削除します
戻り値
multi()、redis オブジェクトを返し、マルチモード モードに入ります。マルチモード モードに入ると、後で呼び出されるすべてのメソッドは、exec() メソッドが呼び出されるまで同じオブジェクトを返します。


watch、unwatch (コードをテストした後、前述の効果は達成できません) キーの値が他のプログラムによって変更されているかどうかを監視します。このキーが watch と exec (メソッド) の間で変更されると、この MULTI/EXEC トランザクションの実行は失敗します (false を返します)
unwatch このプログラムによって監視されているすべてのキーをキャンセルします
パラメータ、キーのペアのリスト
$redis- > ;watch('x');

$ret = $redis->multi() ->incr('x') ->exec();


subscribe
*
メソッドのコールバック。この方法は将来変更される可能性があることに注意してください


publish *コンテンツを特定のチャンネルに公開します。このメソッドは、キーが存在するかどうかを判断するために将来変更される可能性があることに注意してください


exists。true で false でない場合

incr、incrBy
key の値は 1 ずつ増加します。 2 番目のパラメーターが入力されている場合は、2 番目のパラメーターに入力された値だけ増加します
$redis ->incr( 'key1');
$redis->incrBy('key1', 10);

decr, decrBy
は減算を行い、使用方法はincr

と同じですget複数キー配列で構成されるパラメータを渡す
パラメータを返す
キーが存在する場合は値を返し、存在しない場合はfalseを返す
$redis->set('key1', 'value1'); 'key2', 'value2'); $redis ->set('key3', 'value3'); $redis->getMultiple(array('key1', 'key2', 'key3'));
$ redis->lRem('key1', ' A', 2);
$redis->lRange('key1', 0, -1);


list関連操作
lPush
$redis- >lPush(key, value);

要素を追加します rPush$redis-& gt;rPush(key , value); を追加します要素

lPushx/key
という名前の
listの右側(最後)にrPushx $redis->lPushx(key, value);の値を追加しますkeyという名前のlistの左(頭)/右(尾)に
要素、値が既に存在する場合は追加されません
lPop/
rPop
$redis->lPop('key');keyという名前でlistを出力します 左から始まる最初の要素(先頭)/右から始まる(末尾) 、要素を削除します
blPop/brPop
$redis->blPop('key1', 'key2', 10) ; lpop
コマンドの
blockバージョン。つまり、timeout0の場合、key

i

という名前のlistリストが存在しないか、リスト が空です、コマンドは終了します。 timeout>0の場合、上記の状況が発生した場合は、timeout秒間待ってください。問題が解決しない場合は、keyi+1リストを開始します。 pop操作を実行しますlSize$redis->lSize('key');keyという名前のリストに含まれる要素数を返しますlIndex, lGet $ redis->lGet('key', 0);要素を返しますlSet$redis->lSet('Key', 0, 'x'); Key list
という名前の
index

位置の要素は

value

lrange, LGETRANGE $redis->lRange('key1', 0, -1 );keyという名前のliststart
から
end
の間の要素を返します(endは-1、すべてを返します)
lTrim, listトリム $redis->lTrim('key', start, end);key list
という名前の
をインターセプトし、
start
からendまでの間の要素を保持します lRem, lRemove$redis->lRem('key', 'A', 2);リスト内のkeyという名前の
count
要素を削除します
その中央値は value です。count0、値valueを持つすべての要素を削除、count>0valueを持つ要素を削除します最初から最後まで要素、 countvalueを持つ|count|要素を端から端まで削除しますlInsert
keyという名前のリストで、値
pivotを見つけますですRedis::BEFORE | Redis::AFTER パラメーターに従って決定されます。新しい値はピボットの前または後に配置されます。キーが存在しない場合、ピボットは挿入されません。 return -1
$redis->delete('key1'); $redis->lInsert('key1', Redis:: AFTER, 'A', 'X'); $redis->lPush('key1', 'A'); $redis->lPush('key1', 'B'); 'key1', 'C '); $redis->lInsert('key1', Redis::BEFORE, 'C', 'X');
$redis->lRange('key1', 0, -1 );
$redis- >lInsert('key1', Redis::AFTER, 'C', 'Y');
$redis->lRange('key1', 0, -1);
$redis- >lInsert('key1 ', Redis::AFTER, 'W', 'value');

rpoplpush
srckeyという名前のlistの末尾要素を返して削除し、それを追加します要素を名前 Header に追加します $redis->delete('x', 'y');$redis->lPush('x', 'abc'); , 'def'); $redis->lPush('y', '123'); $redis->lPush('y', '456'); // x の最後を y の前に移動します。 . var_dump($redis->rpoplpush('x', 'y'));var_dump($redis->lRange('x', 0, -1)) ;var_dump($redis->lRange ('y', 0, -1)); string(3) "abc"


array(1) { [0]=> string(3 ) "def" }

array( 3) { [0]=> 文字列(3) "abc" [1]=> 文字列(3) "456" [2]=> 文字列(3) "123" }

SET操作関連
sAdd
keyという名前のsetに要素の値を追加します。値が存在する場合は書き込まず、falseを返します
$redis-> ;sAdd (key, value);

sRem, sRemove
要素を削除しますvalue$redis->sAdd('key1' , 'set1');$redis->sAdd('key1' , 'set2');$redis->sAdd('key1' , 'set3');$redis->sRem('key1' , 'set2');sMove


を移動します

srckey
という名前のセットから
dstkey$redis->sMove( seckey, dstkey, value);sIsMember, sContainsという名前のセットへのvalue要素


keyという名前のコレクションにvalue要素があるかどうかを調べます。trueがある場合、falseはありません
$redis->sIsMember(key, value );
sCard, sSizeReturns
key

という名前のset
の数setsRandMembersetの要素をランダムに返します
という名前の
キー
削除せずに sInter 交差点を探索
sInterStore
交差点を見つけて
output$redis->sInterStore('output '、'キー1 ', 'key2', 'key3')sUnionunion
$redis->sUnion('s0', 's1', 's2');
s0,s1,s2 を設定し、同時にユニオン
sUnionStore
ユニオンを見つけて
出力のセット
$redis->sUnionStore('output', 'key1', 'key2', 'key3' );sDiff
差分セットを見つける

sDiffStore
差分セットを見つけるunion 差分セットをoutput
のセットに保存する


sMembers, sGetMembers
すべての要素を返します
key

sort、pagingなどの名前を持つset
パラメータ

'by' => 'some_pattern_*','limit' => array(0, 1),
'get' => 'some_other_pattern_*' またはパターンの配列、'sort' = > 'asc' または 'desc'、'alpha' => 'external-key'
$redis->delete('s'); $redis->sadd('s', 5); $redis->sadd('s); ', 2); $redis->sadd('s', 1); $redis->sadd('s', 3);
var_dump($redis->sort('s'); / 1,2,3,4,5var_dump($redis ->sort('s', array('sort' => 'desc'))); // 5,4,3,2,1 var_dump($redis->sort('s', array ('sort' => 'desc', 'store' => 'out')));コマンド
getSetは元のキーの値を返し、キーに値を書き込みます$redis->set('x', '42');$exValue = $redis->getSet(' x', 'lol'); // '42' を返し、x を 'lol' に置き換えます$newValue = $redis->get('x')' // 'lol' を返す
append
string , 名前は

key

string

値の後に value

$redis->set('key', 'value1');$redis->append('key', 'value2');
$redis->get( 'key');

getRange
(メソッドが存在しません)


start から
end までの文字

を返します。

という名前の

key$redis->set('key', 'string value');
$redis->getRange('key', 0, 5);$redis->getRange ('key', -5, -1); setRange (メソッドが存在しません) keyの文字列の文字を

start

から
end
に変更しますvalue$redis->set('key' , 'Hello world');$redis->setRange('key', 6, "redis");$redis->get('key' );strlen
keyの文字列の長さを取得
$redis->strlen('key');

getBit/setBit
バイナリ情報を返す

zset(ソートセット)操作関連
zAdd
(キー、スコア、メンバー):追加要素 memberzsetkeyscore という名前で並べ替えます。要素が既に存在する場合は、scoreに基づいて要素の順序を更新します。
$redis->zAdd('key', 1, 'val1');
$redis->zAdd('key', 0, 'val0');
$redis->zAdd('key' , 5, 'val5');
$redis->zRange('key', 0, -1); // array(val0, val1, val5)

zRange
(key, start, end); ,withscores): keyという名前のzsetを返します(要素はscoreによってソートされています)小から大まで) インデックス from startからend
までのすべての要素$redis->zAdd('key1', 0, 'val0');
$redis->zAdd('key1', 2, ' val2 ');
$redis->zAdd('key1', 10, 'val10');
$redis->zRange('key1', 0, -1); // スコア付き $redis-> zRange ('key1', 0, -1, true);

zDelete, zRem

zRem(key, member): keyという名前のを削除します zset の要素member
$redis->zAdd('key', 0, 'val0');
$redis->zAdd('key', 2, 'val2');
$ redis ->zAdd('key', 10, 'val10');
$redis->zDelete('key', 'val2');
$redis->zRange('key', 0, -1 ;
(要素が押されました
startからendまでのindexのすべての要素.withscores redis->zAdd('key', 'val0'); $redis->zAdd('key', 2, 'val2');$redis->zAdd('key', 10, 'val10');$redis->zRevRange('key', 0 , -1); // スコア付き $redis->zRevRange('key', 0, -1, true);zRangeByScore , zRevRangeByScore$redis->zRangeByScore(key, star, end, array (スコア付き、制限));は、keyscore >= star すべての要素zCount$redis->を含む
zset

を返します;zCount(キー、star、end);


key
という名前の
zset を返します score >= star および score <= end zRemRangeByScore, zDeleteRangeByScore$redis->zRemRange ByScore('key', star , end);



zsetkeyという名前の要素をすべて削除しますスコアの> = starscore <= end、各 Count zSize、zCard

を返し、
zset
という名前のすべての要素の数を返します
key zScore$redis->zScore(key, val2) ; スコアを返しますzRank, zRevRank$redis->zRevRank(key, val);

return ランク
keyval要素の
index
)(要素は
score
でソートされています)、0Starからt)、もしあればval要素がない場合は、「null」を返します。zRevRank は大きいものから小さいものへと並べ替えられます


zIncrBy
$redis->zIncrBy('key', increment, 'member');
If zset という名前のkey If要素 member にすでに存在する場合、要素の scoreincrement だけ増加します。それ以外の場合、要素はセットに追加され、その score の値は です。 increment

zUnion/zInter
Parameters
keyOutput
arrayZSetKeys
arrayWeights
aggregateFunction
"SUM"、"MIN"、または "MAX" のいずれか: zUnion 中に重複エントリに使用する動作を定義します.
正しいNzsetは和集合と交差を見つけて、最終セットをdstkeyNに保存します。セット内の各要素について、AGGREGATE 操作を実行する前に、scoreWEIGHT パラメータを乗算する必要があります。 WEIGHTが指定されていない場合、デフォルトの1が使用されます。デフォルトの AGGREGATESUM です。つまり、結果セット内の要素の score は、セット内のすべての対応する要素に対する SUM 演算の値です。 MINMAX は、結果セット内の要素の score が、すべてのセット内の対応する要素の最小値と最大値であることを意味します。

ハッシュオペレーション
hSet

$redis->hSet('h', 'key1', 'hello');
hという名前のハッシュに要素key1を追加します — >hello

hGet
$redis->hGet('h', 'key1');
hという名前のハッシュのkey1に対応するを返します値(hello)

hLen$redis->hLen('h');

hという名前のハッシュ内の要素の数

hDを返します $redis->hDel('h', 'key1');

hという名前のハッシュ内のドメインhKeysを削除します $redis->hKeys('h ');

すべてのキーを返します

hVals$redis->hVals('h') 値を返しますhGetAll
$redis->hGetAll( 「は」 );
は、

を返します。 $redis->hExists(' h', 'a');name ドメインはありますか hIncrBy

$redis->hIncrBy('h', 'x', 2);a

ハッシュh22
hMset
$redis->hM set('user:1', array('name' => 'Joe', ') を追加します。給与' => 2000));

keyという名前のハッシュに要素hMGet
$をバッチ追加します redis->hmGet('h', array('field1' , 'field2'));
は、
h
という名前のハッシュfield1、field2に対応するを返しますredis操作関連 フラッシュDB

現在のデータベースをクリアします
flushAll
すべてのデータベースをクリアしますrandomKeyランダムリターン
key
スペースの
キー
$key = >ランダムキー(); selectデータベースを選択moveキーを別のデータベースに転送$redis->select(0) // DB 0に切り替える$redis->set('x', ' 42'); // x$redis->move('x', 1) // DB 1 に移動$redis->select(1); // DB 1 に切り替えるredis->get('x'); // 42 を返します
rename, renameKey
キーの名前を変更します$redis->set ('x', '42');$redis-> rename('x', 'y');$redis->get('y'); // → 42
$redis-> // → `FALSE`
; renameNx
はremaneに似ていますが、名前変更された名前が既に存在する場合、正常に置き換えられません

setTimeout、expire

set a
key
active time (s)$ redis->setTimeout('x', 3);
expireAt

key は Unix タイムスタンプ時間まで存続します$redis->expireAt('x', time() + 3);

keys, getKeys
すべてを返します

key

$keyWithUserPrefix = $redis->keys('user *');


dbSize現在データベースにキーがいくつあるか確認してください
$count = $redis- >dbSize();


auth

パスワード認証
$redis->auth('foabared');
bgrewriteaof

データベースの永続化には aof を使用します$redis->bgrewriteaof();
slaveofスレーブサーバーを選択します$redis->slaveof('10.0.1.7', 6379); saveデータをディスクに同期的に保存します


bgsave
データをディスクに非同期で保存します

lastSave
最後のUnixタイムスタンプを返します

info

最後に成功したRedisバージョン情報とその他の詳細データをディスクに保存します



type
key
stringの型値を返します: Redis::REDIS_STRING
set: Redis::REDIS_SET
list: Redis::REDIS_LIST
zset: Redis::REDIS_ZSET
hash: Redis::REDIS_HASH
other : Redis::REDIS_NOT_FOUND

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/326630.html技術記事 phpredis は PHP の拡張機能であり、リンクされたリストのソート機能を備えており、メモリレベルのモジュールのビジネス関係を作成するのに非常に役立ちます。
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート