/**
 * getKeysByPattern function
 * @Description
 * 模糊匹配redis 的key 之后删除
 * @param $pattern
 * @author: Dai
 * @date 2022/4/11 17:11
 */
public function getKeysByPattern($pattern,$isDelete = 0)
{
    //该方法可以获取到原生的redis对象,可以使用原生的
    $resdis =  Cache::store('redis')->handler();
    $iterator = null;
    //$pattern = "*_EFALOGIN";
    $keysList = [];
    while(true){
        $keys = $resdis->scan($iterator, $pattern,1000);
        $keysList = array_merge($keysList, $keys??[]);
        if ($iterator === 0) {//迭代结束,未找到匹配pattern的key
            break;
        }
        if ($iterator === null) {//"游标为null了,重置为0,继续扫描"
            $iterator = "0";
        }
    }
    $keysList = array_unique($keysList);
    if($isDelete == 1){
        foreach ($keysList as $item) {
            $result = $resdis->del($item);
        }
    }
    return $keysList;
}
(文章今日已有 1 人访问,总访问量 52 ::>_<::)