php控制每小时内的执行次数
用什么方法可以限制php文件在每小时内的执行次数,如果超过预定的次数,有请求也不执行?请给一个具体的例子。(问题来源是有些api接口有调用次数限制,但api又不提供查询剩...
用什么方法可以限制php文件在每小时内的执行次数,如果超过预定的次数,有请求也不执行?请给一个具体的例子。(问题来源是有些api接口有调用次数限制,但api又不提供查询剩余次数的函数,只好自己限定请求次数)
展开
3个回答
展开全部
<?php
sessopm_start();
$h = date('H');
if (! isset($_SESSION['count']))$_SESSION['count'] = 0;
if (! isset($_SESSION['h']))$_SESSION['h'] = $h;
if ($_SESSION['h'] !==$h){//每一小时重置一次
$_SESSION['count'] = 0;
$_SESSION['h'] = $h;
}
//小于20次就执行
if ($_SESSION['count'] < 20){
//$run = new api();//假定这一行执行api
$_SESSION['count'] = $_SESSION['count'] + 1;
}
?>
纯手工输入,思路是这样的!
展开全部
思路是这样,不过API接口的话貌似是不支持session的,通过一楼大虾的思路可以改良下,因最近在做APP接口,要用到,so,想了下,session的键可以使用用户的唯一标识拼接时间(时间戳或楼上的当前小时值),值还是存访问次数。具体代码我就不写了。年代也挺久远了,欢迎有更好的思路提供。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把API的执行次数记录下来,然后判断
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询