@@ -318,7 +318,11 @@ public function scan($cursor, $options = [])
318
318
$ options ['count ' ] ?? 10
319
319
);
320
320
321
- return empty ($ result ) ? $ result : [$ cursor , $ result ];
321
+ if ($ result === false ) {
322
+ $ result = [];
323
+ }
324
+
325
+ return $ cursor === 0 && empty ($ result ) ? false : [$ cursor , $ result ];
322
326
}
323
327
324
328
/**
@@ -336,7 +340,11 @@ public function zscan($key, $cursor, $options = [])
336
340
$ options ['count ' ] ?? 10
337
341
);
338
342
339
- return $ result === false ? [0 , []] : [$ cursor , $ result ];
343
+ if ($ result === false ) {
344
+ $ result = [];
345
+ }
346
+
347
+ return $ cursor === 0 && empty ($ result ) ? false : [$ cursor , $ result ];
340
348
}
341
349
342
350
/**
@@ -354,7 +362,11 @@ public function hscan($key, $cursor, $options = [])
354
362
$ options ['count ' ] ?? 10
355
363
);
356
364
357
- return $ result === false ? [0 , []] : [$ cursor , $ result ];
365
+ if ($ result === false ) {
366
+ $ result = [];
367
+ }
368
+
369
+ return $ cursor === 0 && empty ($ result ) ? false : [$ cursor , $ result ];
358
370
}
359
371
360
372
/**
@@ -372,7 +384,11 @@ public function sscan($key, $cursor, $options = [])
372
384
$ options ['count ' ] ?? 10
373
385
);
374
386
375
- return $ result === false ? [0 , []] : [$ cursor , $ result ];
387
+ if ($ result === false ) {
388
+ $ result = [];
389
+ }
390
+
391
+ return $ cursor === 0 && empty ($ result ) ? false : [$ cursor , $ result ];
376
392
}
377
393
378
394
/**
0 commit comments