Redis
 sql >> Datenbank >  >> NoSQL >> Redis

So verwenden Sie SCAN mit der MATCH-Option in Predis

Wie das geht, habe ich im Predis-Beispielverzeichnis gefunden.

Um SCAN zu verwenden Um nach passenden Schlüsseln in einer Datenbank zu suchen, verwenden Sie einfach den Predis\Collection\Iterator\Keyspace Klasse:

use Predis\Collection\Iterator;

$client = ...;
$pattern = 'foo*';

foreach (new Iterator\Keyspace($client, $pattern) as $key) {
    ...
}

Anscheinend hat Predis eine Iterator-Klasse in Predis\Collection\Iterator für jeden der Befehle, die Iteratoren zurückgeben:

  • Keyspace für SCAN
  • HashKey für HSCAN
  • SetKey für SSCAN
  • SortedSetKey für ZSCAN
  • ListKey für LRANGE - Dies verwendet nicht wirklich Redis-Iteratoren, aber es ist eine nette Schnittstelle zu LRANGE sowieso.