Ik heb gevonden hoe ik dit moet doen in de Predis-voorbeeldmap.
SCAN gebruiken om te zoeken naar overeenkomende sleutels in een database, gebruikt u eenvoudig de Predis\Collection\Iterator\Keyspace klas:
use Predis\Collection\Iterator;
$client = ...;
$pattern = 'foo*';
foreach (new Iterator\Keyspace($client, $pattern) as $key) {
...
}
Blijkbaar heeft Predis een iteratorklasse in Predis\Collection\Iterator voor elk van de opdrachten die iterators retourneren:
KeyspacevoorSCANHashKeyvoorHSCANSetKeyvoorSSCANSortedSetKeyvoorZSCANListKeyvoorLRANGE- Dit gebruikt niet echt Redis-iterators, maar het is een mooie interface voorLRANGEhoe dan ook.