> 백엔드 개발 > PHP 튜토리얼 > PHP를 기반으로 간단한 무작위 복권 애플릿 구현

PHP를 기반으로 간단한 무작위 복권 애플릿 구현

WBOY
풀어 주다: 2016-07-29 09:07:43
원래의
986명이 탐색했습니다.

작은 복권 프로그램으로, 개요를 제어할 수 있고 특정 상품이 프런트 엔드에 표시될 수 있지만 프로그램에서 얻을 수는 없습니다! 모든 확률 x10을 더한 후 새 배열의 각 항목 값은 이전 항목의 합계에 자신을 더한 값과 같습니다.

그런 다음 즉시 0부터 최대 숫자 사이의 숫자를 생성하고 루프를 통해 그것이 어느 간격에 속하는지 확인하고 해당 간격의 키를 반환합니다.

코드는 다음과 같습니다

$prize = array(
1 => 3.5, //3.5%机率
2 => 2.5, 
3 => 6, 
4 => 2, 
5 => 42, //42%机率
6 => 36, 
7 => 2, 
8 => 4, 
9 => 2
);
//最后确认相加等于100
$prizeList = array(
1 => array('小仙子'), 
2 => array('5Q币'), 
3 => array('38888游戏币'), 
4 => array('88888游戏币'), 
5 => array('谢谢参与!'), 
6 => array('欢迎下次再来!'), 
7 => array('10Q币'), 
8 => array('888银元宝(绑定)'), 
9 => array('随机高级坐骑(绑定)')
);
//unset($prize[7]); 直接把10Q这个奖品去掉
$times = 10;
$max = 0;
foreach ($prize as $k => $v)
{
$max = $v * $times + $max;
$row['v'] = $max;
$row['k'] = $k;
$prizeZone[] = $row;
}
$max--; //临界值
$rand = mt_rand(0, $max);
$zone = 1;
foreach ($prizeZone as $k => $v)
{
if ($rand >= $v['v'])
{
if ($rand >= $prizeZone[$k + 1]['v'])
{
continue;
}
else
{
$zone = $prizeZone[$k + 1]['k'];
break;
}
}
$zone = $v['k'];
break;
}
print_r($prizeList[$zone][0]);
로그인 후 복사

PHP 기반의 간단한 복권 애플릿을 구현하기 위해 작성한 것은 이것이 전부이지만 모두 핵심 코드입니다. 모두가 배우고 일하는 데 도움이 되길 바랍니다.

위 내용은 다양한 측면을 포함하여 PHP를 기반으로 한 간단한 무작위 복권 애플릿의 구현을 소개합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿