码迷,mamicode.com
首页 > 其他好文 > 详细

Redis限制在规定时间范围内登陆错误次数限制

时间:2019-02-24 18:54:04      阅读:176      评论:0      收藏:0      [点我收藏+]

标签:echo   amp   lse   name   class   校验   key   func   util   

//登录错误次数校验
$key = "login_{$username}";
$res = $this->_redisVerify($key,10,1800);//半小时内密码输入错误10次
if(!$res){
     echo "手机号或密码错误次数过多,请稍后再试";
 }else{
     echo "手机号或密码错误";
 }
/**
* redis限制
* @param $key : redis key
* @param $times : 次数
* @param $time : key有效时间
* @return bool
*/
private function _redisVerify($key,$times,$time = 86400){
        $redis = new Utils_Redis();
        $redis->select(11);//选择db 10
        $value = (int)$redis->get($key);
        if($value && $value < $times){//防刷次数
            $redis->increment($key);//如果有手机号键名,添加次数
        }elseif(!$value){
            $redis->set($key,1,$time);//设置TimeOut
        }elseif($value >= $times){
            return false;
        }
        return true;
}

 

Redis限制在规定时间范围内登陆错误次数限制

标签:echo   amp   lse   name   class   校验   key   func   util   

原文地址:https://www.cnblogs.com/yszr/p/10427063.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!