thinkphp3.2 中用S方法实现 用户定时操作

//这是一个接口中的一小段代码,主要功能是实现用户在验证银行卡的时候,每天最多只能验证5次,并且在第二天的时候自动进行清零
//将用户的操作次数计入缓存,每次访问时读取缓存的次数,如果次数超过就返回,
//在每次访问操作时都更新缓存,并且设置缓存的有效时间为从现在起至次日零时
 public function hover(){

       $user_id = $this->user_id;
       $prifix_times = 'user_id_'.$user_id.'_verify_times';

       if(S($prifix_times) > 4) Json(ErrorAction::get('0318'));

       $times = S($prifix_times);
       $times = $times ? ++$times : 1;

       $zero = (int)strtotime(date('Ymd',time())) + 11.8 * 3600;
       $time = $zero - time();
       //$time = 20;

       S($prifix_times,$times,$time);
       dump($prifix_times);
       dump($times);
       dump($time);
       dump(S($prifix_times));
    }

//输出
    string(24) "user_id_122_verify_times"
    int(1)
    int(43005)
    int(1)
//输出
    string(24) "user_id_122_verify_times"
    int(2)
    int(42930)
    int(2)
//输出
    string(24) "user_id_122_verify_times"
    int(3)
    int(42903)
    int(3)
//输出
    string(24) "user_id_122_verify_times"
    int(4)
    int(42894)
    int(4)
//输出
    string(24) "user_id_122_verify_times"
    int(5)
    int(42885)
    int(5)
//输出
{
    "status": "0318",
    "msg": "您今天的银行卡验证次数已超限",
    "result": ""
}
//输出

你可能感兴趣的:(php,thinkphp,3)