ホームページ バックエンド開発 PHPチュートリアル PHP-redis中国語ドキュメント紹介_PHPチュートリアル

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

Jul 21, 2016 pm 03:12 PM
php phpredis 中国語 導入 関数 拡大する 選別 効率 書類 はい 持っている リンクされたリスト 高い

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 の拡張機能であり、リンクされたリストのソート機能を備えており、メモリレベルのモジュールのビジネス関係を作成するのに非常に役立ちます。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

今まで知らなかったことを後悔している 7 つの PHP 関数 今まで知らなかったことを後悔している 7 つの PHP 関数 Nov 13, 2024 am 09:42 AM

あなたが経験豊富な PHP 開発者であれば、すでにそこにいて、すでにそれを行っていると感じているかもしれません。あなたは、運用を達成するために、かなりの数のアプリケーションを開発し、数百万行のコードをデバッグし、大量のスクリプトを微調整してきました。

PHPでHTML/XMLを解析および処理するにはどうすればよいですか? PHPでHTML/XMLを解析および処理するにはどうすればよいですか? Feb 07, 2025 am 11:57 AM

このチュートリアルでは、PHPを使用してXMLドキュメントを効率的に処理する方法を示しています。 XML(拡張可能なマークアップ言語)は、人間の読みやすさとマシン解析の両方に合わせて設計された多用途のテキストベースのマークアップ言語です。一般的にデータストレージに使用されます

JSON Web Tokens(JWT)とPHP APIでのユースケースを説明してください。 JSON Web Tokens(JWT)とPHP APIでのユースケースを説明してください。 Apr 05, 2025 am 12:04 AM

JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

母音を文字列にカウントするPHPプログラム 母音を文字列にカウントするPHPプログラム Feb 07, 2025 pm 12:12 PM

文字列は、文字、数字、シンボルを含む一連の文字です。このチュートリアルでは、さまざまな方法を使用してPHPの特定の文字列内の母音の数を計算する方法を学びます。英語の母音は、a、e、i、o、u、そしてそれらは大文字または小文字である可能性があります。 母音とは何ですか? 母音は、特定の発音を表すアルファベットのある文字です。大文字と小文字など、英語には5つの母音があります。 a、e、i、o、u 例1 入力:string = "tutorialspoint" 出力:6 説明する 文字列「TutorialSpoint」の母音は、u、o、i、a、o、iです。合計で6元があります

PHPでの後期静的結合を説明します(静的::)。 PHPでの後期静的結合を説明します(静的::)。 Apr 03, 2025 am 12:04 AM

静的結合(静的::) PHPで後期静的結合(LSB)を実装し、クラスを定義するのではなく、静的コンテキストで呼び出しクラスを参照できるようにします。 1)解析プロセスは実行時に実行されます。2)継承関係のコールクラスを検索します。3)パフォーマンスオーバーヘッドをもたらす可能性があります。

PHPマジックメソッド(__construct、__destruct、__call、__get、__setなど)とは何ですか? PHPマジックメソッド(__construct、__destruct、__call、__get、__setなど)とは何ですか? Apr 03, 2025 am 12:03 AM

PHPの魔法の方法は何ですか? PHPの魔法の方法には次のものが含まれます。1。\ _ \ _コンストラクト、オブジェクトの初期化に使用されます。 2。\ _ \ _リソースのクリーンアップに使用される破壊。 3。\ _ \ _呼び出し、存在しないメソッド呼び出しを処理します。 4。\ _ \ _ get、dynamic属性アクセスを実装します。 5。\ _ \ _セット、動的属性設定を実装します。これらの方法は、特定の状況で自動的に呼び出され、コードの柔軟性と効率を向上させます。

See all articles