Redis で利用可能なすべての保存オプションについて少し混乱しています。私は単純なことをしたいのですが、それを過度に設計したくありません。私はと働いていphpredis
ますRedis v2.8.6
。
保存する必要があるこの単純な連想配列があります。また、キーでアイテムを取得し、すべてのアイテムをループできる必要があります。
$a = array(
'12345' => array(
'name' => 'Post A',
'val2' => 'blah blah',
'val3' => 'blah blah blah',
),
'54321' => array(
'name' => 'Post B',
'val2' => 'blah blah',
'val3' => 'blah blah blah',
),
'998877' => array(
'name' => 'Post C',
'val2' => 'blah blah',
'val3' => 'blah blah blah',
)
);
だから今までやっていたのはhash
型を使うことでした。次のように配列を保存します。
foreach ($a as $key => $value) {
$this->redis->hSet('posts', $key, json_encode($value));
}
そのように、次のように簡単にキーにアクセスできました。
public function getPost($postId)
{
return json_decode($this->redis->hGet('posts', $postId), true);
}
// This is returning the information of Post A
$post = getPost(12345);
しかし今、私はそれを行う方法がわからないすべての投稿をループする必要があり、現在の構造でそれを行うことができるかどうか. post_id
すべての投稿をループできるようにするために、すべてを別のリストに保存する必要があるかどうかわかりませんか?
だから私の質問は、投稿のリストを保存するためにどのデータ型を使用すればよいですか?
ありがとう、マキシム