2021-07-22 14:11:14 1291次浏览 1条回答 0 悬赏 10 金钱

比如我想 在 按钮点击10次后才触发 后端的 某个功能

期间,点击一次 累加1次

按钮点击5次,刷新后累计这5次的,不清空。

因为是接口对接口,所以没有什么session信息啥的,只有用户id和名字

要怎么实现呢

最佳答案

  • 蓝色主旋律 发布于 2021-07-22 15:53 举报

    不知道要达到什么样的效果,也不知道实际对接场景。
    可以简单实现.
    伪代码

    const TRIGGER_COUNTER = 10;
    
    // .......
    
    // 点击之后
    $key = 'counter:'. $userId; // counter:1
    
    $counter = XXBiz::getCounter($key);
    $counter ++;
    if ($counter >= self::TRIGGER_COUNTER) {
    	$counter = 0;
    }
    
    XXBiz::setCounter($key, $counter);
    
    // XXBiz .....
    public static function getCounter($key){
    	$counter = $redis->get($key);
    	if (empty($counter)) {
    		$counter = 0;
    	}
    	return $counter;
    }
    
    public static function  setCounter($key, $counter) {
    	$redis->set($key, $counter);
    }
    
    1 条回复
    回复于 2021-07-22 22:58 回复

    已经弄好了,和你这差不多,

    谢谢大佬回复

    没有找到数据。
您需要登录后才可以回答。登录 | 立即注册
蛋蛋的蛋
主管

蛋蛋的蛋

注册时间:2018-04-02
最后登录:2024-03-11
在线时长:34小时29分
  • 粉丝4
  • 金钱64
  • 威望20
  • 积分604

热门问题