# 推奨: 「php キーを削除する Redis メソッド: まず、scan コマンドを使用して、[XX] というプレフィックスが付いたキーを段階的に反復処理し、次に unlink 関数を通じて指定されたキーを削除します。
php redis バッチ削除キー
概要
scan コマンドを使用して段階的に繰り返し、プレフィックス XX が付いたキーを走査し、削除します。はじめに
実際の開発では、ある長老がキャッシュ時間を追加するのを忘れたり、キャッシュ時間を追加する必要があるなど、誤ってコード
/** 在redis集群中,scan命令需要指定节点。还需要注意,要连接主节点。 **/ $redis = new \Redis(); $timeout = 2.5; $ip = '127.0.0.1'; $redisConfArr = [ [$ip, 8001], [$ip, 8002], [$ip, 8003] ]; foreach ($redisConfArr as $redisConf) { $redis->pconnect($redisConf[0], $redisConf[1], $timeout); //默认SCAN_NORETRY情况下有可能会返回空数组,设置成SCAN_RETRY,如果是空数组的话,将不返回继续扫描下去 $redis->setOption(\Redis::OPT_SCAN, \Redis::SCAN_RETRY); $it = NULL; while ($arr_keys = $redis->scan($it, CacheKeyConfig::CachePre.'*')) { if (is_array($arr_keys)) { //推荐使用unlink函数,非阻塞删除,删除大key时很好用,但是它需要redis版本>=4.0 $result = $redis->del($arr_keys); echo $result . PHP_EOL; } } echo "OK!" . PHP_EOL; }
以上がPHP Redisでキーをバッチで削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。