Jeg fandt, hvordan man gør det i biblioteket Predis eksempler.
For at bruge SCAN for at søge efter matchende nøgler i en database, skal du blot bruge Predis\Collection\Iterator\Keyspace klasse:
use Predis\Collection\Iterator;
$client = ...;
$pattern = 'foo*';
foreach (new Iterator\Keyspace($client, $pattern) as $key) {
...
}
Tilsyneladende har Predis en iterator-klasse i Predis\Collection\Iterator for hver af de kommandoer, der returnerer iteratorer:
KeyspaceforSCANHashKeyforHSCANSetKeyforSSCANSortedSetKeyforZSCANListKeyforLRANGE- Dette bruger ikke rigtigt Redis iteratorer, men det er en fin grænseflade tilLRANGEalligevel.