//登录错误次数校验$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;}