Znalazłem, jak to zrobić w katalogu przykładów Predis.
Aby użyć SCAN aby wyszukać pasujące klucze w bazie danych, wystarczy użyć Predis\Collection\Iterator\Keyspace klasa:
use Predis\Collection\Iterator;
$client = ...;
$pattern = 'foo*';
foreach (new Iterator\Keyspace($client, $pattern) as $key) {
...
}
Najwyraźniej Predis ma klasę iteratora w Predis\Collection\Iterator dla każdego polecenia, które zwraca iteratory:
KeyspacedlaSCANHashKeydlaHSCANSetKeydlaSSCANSortedSetKeydlaZSCANListKeydlaLRANGE- To naprawdę nie używa iteratorów Redis, ale jest to fajny interfejs doLRANGEw każdym razie.