PHP中奖概率的抽奖算法程序代码

& lt; ?php

//id为奖次,奖品为中奖信息,v为中奖概率

$ prize_arr=阵列(
,,,,,,' 0 '=比;阵列(“id”=比;1、“奖”=比;' 1 ',' v '=比;1),
,,,,,,' 1 '=比;阵列(“id”=比;2、“奖”=比;' 2 ',' v '=比;2),
,,,,,,' 2 '=比;阵列(“id”=比;3、“奖”=比;' 3 ',' v '=比;5),
,,,,,,“3”=比;阵列(“id”=比;4、“奖”=比;' 4 ',' v '=比;10),
,,,,,,“4”=比;阵列(“id”=比;5、“奖”=比;' 5 ',' v '=比;15),
,,,,,,' 5 '=比;阵列(“id”=比;6,“奖”=比;' 6 ',' v '=比;67年),
,,,,,,,,);

,,,,foreach (prize_arr美元美元关键=比;美元val)
,,,,{
,,,,,美元,美元arr (val [“id”]]=$ val [' v '];
,,,,}

,,,美元,美元掉=get_rand (arr);//根据概率获取奖项id

,,,,开关(摆脱美元)
,,,,{
,,,,,,摆脱美元==1:一个();断裂;
,,,,,摆脱美元==2,情况:两个();断裂;
,,,,,案件,摆脱美元==3:三();打破;
,,,,,案件,摆脱美元==4:四();打破;
,,,,,案件,摆脱美元==5:5();断裂;
,,,,,,案例摆脱美元==6:六();断裂;

,,,,}

/* *
, *根据概率获取中奖号码
, */,,,,
函数get_rand (proArr美元)
{
,美元,结果=";
,,//概率数组的总概率精度
,,$ proSum=函数($ proArr);
,,//概率数组循环
,,foreach (proArr美元美元关键=比;proCur美元)
,,{
,,,,$ randNum=mt_rand (1, proSum美元);
,,,,如果($ randNum & lt;=proCur美元)
,,,,{
,,,,,,结果=美元关键;
,,,,,,打破;
,,,}
大敌;,,,
其他,,,{
,,,,,,proSum -=proCur美元;
,,,}
大敌;}
大敌;,设置($ proArr);
,美元,返回结果;
}

函数一()
{
,,回波的一个- - - - - - 1;

}

函数二()
{
,,呼应的两个- - - - - - 2;
}

函数三个()
{
,,呼应“三- - - - - - 3”;
}

函数4 ()
{
,,呼应“四- - - - - - 4”;
}

函数五()
{
,,呼应“- - - - - - 5”;
}

6()函数
{
,,回声“六- - - - - - 6”;
}


?在


PHP中奖概率的抽奖算法程序代码