【原创】时限业务到期检测方法

作者Veris 文章分类 分类:PHP 文章评论 0条评论 阅读次数 已被围观 544

网站业务中常常会有某些服务到期检测(如会员套餐到期检测):

1、简单到期检测,2018/2/8 21:16(当前时间)是否大于2018/2/8 20:00(截止时间)

2、观测时段到期检测,2018/2/8 21:16(当前时间)+3天(观测时段)是否大于2018/2/12 20:00(截止时间)

执行时段问题:

有些业务会要求在到期后的某个时间范围内执行相关业务,这就引出了执行时段(当前或观测时间处在到期、检测时段t1~t2)。

除了未到期时段之外,超出检测时段也不执行相关业务,如下图所示:

相关代码参考:

剩余天数检测方法

$curTime	=1518093951; // 当前时间
$expireTime	=1518093951+86400*5; // 截止时间
$day		=7; // 观测天数
$timeLeft	=ceil(($expireTime-$curTime)/86400); // 剩余时间
echo "观测天数:{$day}<br>";
echo "剩余天数:{$timeLeft}<br>";
if($day>=$timeLeft){
	if($timeLeft>=0){
		echo '已到执行时段';
	}else{
		// 剩余天数为负数(当前时间>截止时间)
		echo '超出执行时段';		
	}
}else{
	echo '未到执行时段';
}

执行时段检测方法

// 当前时间+观测时间>=到期时间 且 当前时间+观测时间<到期时间+1天
if($curTime+$day*86400>=$expireTime && $curTime+$day*86400<$expireTime+86400){
	echo '执行时段';
}

=================================================
转载请注明出处:
作者:Veris
最族 [ http://www.mostclan.com ]

分类:PHP
标签: 到期检测

发表评论: