Saya menemukan cara melakukannya di direktori contoh Predis.
Untuk menggunakan SCAN
untuk mencari kunci yang cocok dalam database, Anda cukup menggunakan Predis\Collection\Iterator\Keyspace
kelas:
use Predis\Collection\Iterator;
$client = ...;
$pattern = 'foo*';
foreach (new Iterator\Keyspace($client, $pattern) as $key) {
...
}
Rupanya Predis memiliki kelas iterator di Predis\Collection\Iterator
untuk setiap perintah yang mengembalikan iterator:
Keyspace
untukSCAN
HashKey
untukHSCAN
SetKey
untukSSCAN
SortedSetKey
untukZSCAN
ListKey
untukLRANGE
- Ini tidak benar-benar menggunakan iterator Redis, tetapi antarmuka yang bagus untukLRANGE
bagaimanapun juga.