我们都知道查找复述的键时,可以使用键模式,但当关键太多时,钥匙命令的效率就很低,如果在线上直接使用,甚至可能发生生产事故,这时候,我们不妨使用扫描命令。
扫描命令是一个基于游标的迭代器(基于<代码>光标迭代器> 代码):
扫描命令每次被调用之后,都会向用户返回一个新的游标,用户在下次迭代时需要使用这个新游标作为扫描命令的游标参数,以此来延续之前的迭代过程。
当扫描命令的游标参数被设置为0时,服务器将开始一次新的迭代,而当服务器向用户返回值为0的游标时,表示迭代已结束。
<强>生成键强>
& lt; php ?//生成1000个 复述,美元=new \复述(); 复述→美元连接(& # 39;127.0.0.1 # 39;,6379年,10); 美元复述→选择(2); $ arr=[ & # 39;rwer& # 39; & # 39;24一并# 39; & # 39;rterq4& # 39; & # 39;sdgfd5& # 39; & # 39;dgsdg& # 39; & # 39;财经事务及库务局局长# 39; ]; ($ i=0;i<美元;1000;$我+ +){ 复述→美元(md5 (arr。美元[$ % 6]),md5 (arr美元($ % 6]强生# 39;sdfsd& # 39;)); } 回声“OK" .PHP_EOL;
<强>键查看个数强>
<代码>键c * 代码>
<强>复述中使用扫描替换键强>
<强>扫描遍历强>
& lt; php ? 复述,美元=new \复述(); 复述→美元连接(& # 39;127.0.0.1 # 39;,6379年,10); 美元复述→选择(2); 迭代器美元=零;//遍历前缀 $模式=& # 39;c * & # 39;; 数=100美元;//务必设置,如果没扫描到,继续扫描,而不是返回空,否则而直接退出,遍历就会不准确 复述→美元setOption(\复述::OPT_SCAN \复述:SCAN_RETRY); 总美元=[]; $ i=0;//计算美元可以不设置,非必需参数 而(arr=复述→美元扫描(迭代器,模式,美元数美元)){ arrVal=复述→美元mget (arr); 随著美元=合二为一(arr, arrVal美元); 总美元=array_merge(总,随著美元); 美元我+ +; }//var_dump ($); var_dump ($ i); 回声count ($) .PHP_EOL;
<强>复述中使用扫描替换键强>
当然你也可以不使用<代码> \复述::OPT_SCAN 代码>,<代码> \复述:SCAN_RETRY 代码>这两个参数,自行循环,判断返回值是不是假的,也能遍历成功。
以上就是复述中如何使用扫描替换钥匙的详细内容,更多请关注其它相关文章!