<?php
/**
 * title: Redis请求限制
 */
date_default_timezone_set('PRC');
// 指定时区
$token = @$_REQUEST['token'];
// $data = Db::name('table')->column('token');
// if(isset($token) && in_array($token,$data))
if(isset($token)){
    $redis = new Redis();
    $redis->connect('127.0.0.1', 6379); 
    // 连接 Redis
    if (!$redis->exists($token)){
        // 判断是否为初次访问
        $tomorrow = strtotime('tomorrow');
        // 获取第二天0点的时间戳
        $time = $tomorrow-time();
        $redis->set($token,1,$time);
        // 初始次数设置为1,过期时间设置为第二天0点
    }else{
        if ($redis->get($token) < 1000){ 
            // 判断是否达到请求上限(每日请求需小于1000次)
            $redis->incr($token); 
            // 请求次数加一
            $get_num = $redis->get($token);
            echo '已经调用'.$get_num.'次';
        }else{
            echo '次数用尽,已达到上限'.$redis->get($token).'次';
        }
    }
}else{
    echo "请传递Token";
}
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。