目的
已知一个彩票知道第210786期开奖时间为20:03:30, 并且彩票在20:03:30~21:04:30不开奖,其余时间每隔210s开一次奖. 求任意期数的开奖时间.
代码
public function t()
{
$基准时间 = strtotime(
'2017-02-20 20:03:30');
$基准期数 =
210786;
$计算时间 = strtotime(
'2017-02-20 20:03:30');
$计算期数 =
210787;
$期数间隔=
210;
function 期数有效(
$time){
$无效开始时间=mktime(
20,
03,
30,
date(
'd',
$time),
date(
'm',
$time),
date(
'Y',
$time));
$无效结束时间=mktime(
21,
04,
30,
date(
'd',
$time),
date(
'm',
$time),
date(
'Y',
$time));
return !((
$无效开始时间<
$time) && (
$time<
$无效结束时间));
}
while (
$基准期数 <>
$计算期数) {
if (
$基准期数 <
$计算期数) {
$计算时间+=
$期数间隔;
if(期数有效(
$计算时间))
$计算期数--;
} elseif (
$基准期数 >
$计算期数) {
$计算时间-=
$期数间隔;
if(期数有效(
$计算时间))
$计算期数++;
}
}
RETURN
date(
'Y-m-d H:i:s',
$计算时间);
}
转载请注明原文地址: https://ju.6miu.com/read-500107.html