微信公众号 PHP开发四 (redis暂保存成团信息)

需求:在用户发起成团,与用户入团时需要保存其成团信息(主要是活动id与团长、团员openid),暂存在redis中,后期需要保存到sql中,以便查询。

tuan_redis.php

<?php
include_once('/opt/*****ub/redis.php');//redis配置文件
$redis = new RedisClient;
$redis->connect(array('host'=>'127.0.0.1','port'=>6380));
$redis->selectDB(3);
function judgeTuan($openid,$act_id){
	global $redis;
	if($redis->get($act_id.$openid)){    //判断是否已开过团
		$tuan_yuan	= $redis->get($act_id.$openid);
		$people_arr	= explode(',',$tuan_yuan);
		return $people_arr[0];			//返回之前保存的团长openid(第一个)
	}else{
		return false;			//返回false,之前未有过
	}
}

function startTuan($openid,$act_id,$mediaID){		//保存成团信息
	global $redis;
	//$redis->set($act_id.$openid,$mediaID,86400*10);
	$redis->set($act_id.$openid,$mediaID,3600*5);  //测试保存5个小时(已$act_id.$openid为键名)
	return $mediaID;
}

function joinTuan($p_openid,$act_id,$openid){   //保存参团人员信息
	global $redis;
	if($p_openid == $openid){
		return 4;				//扫自己本人发出的二维码无效
	}
	$tuan_yuan	= $redis->get($act_id.$p_openid);
	$people_arr	= explode(',',$tuan_yuan);
	$peo_num	= count($people_arr);
	if($peo_num <= 9){          //八人团,加第一个图片地址,为9(第一个为团长信息)
		if(strpos($tuan_yuan,$openid) === false){
			$tuan_yuan	.= ','.$openid;
			//$redis->set($act_id.$p_openid,$tuan_yuan,86400*10);
			$redis->set($act_id.$p_openid,$tuan_yuan,3600*5);  //测试保存5个小时
			addTime($p_openid,$act_id,3600*5);    //保存对应的入团时间
			return 1;			//进团成功
		}else{
			return 3;			//已进过此团
		}
	}else{
		return 2;				 //此团已满
	}
}
function addTime($openid,$act_id,$time){
	global $redis;
	$now_time	= date('Y-m-d H:i:s');
	$join_time      = $redis->get($act_id.$openid.'time');
	if($join_time){
		$join_time .= ','.$now_time;
		$redis->set($act_id.$openid.'time',$join_time,$time);
	}else{
		$redis->set($act_id.$openid.'time',$now_time,$time);
	}	
	
}

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值