本文的示例
介绍了PHP随机抽奖,供大家
参考,具体分析如下:
1。根据设定概率,得到随机彩票的结果。
复制代码代码如下:< PHP
*彩票
工具 * /
类lottery_tool {
保护静态awardsarr美元;
保护静态ProField = 'probability美元;
保护静态启源= 0美元;
保护静态checkaward美元=假;
const success_code = 0;
const fail_code = - 1;
检查/绘制数据
保护静态
函数checkawards(){
如果(!is_array(自::awardsarr美元)| |空(自::$ awardsarr)){
回归自我::checkaward美元= false;
}
自::启源= 0美元;
foreach(自::awardsarr美元为{ $ _key = > $奖)
自::$启源:ProField } = {美元美元奖自;
}
如果(空(自::$启源)){
回归自我::checkaward美元= false;
}
回归自我::checkaward美元=真;
}
保护静态函数successroll($ rollkey){
返回的数组('code=自我::success_code = > rollkey美元,'roll_key ''msg ','roll =成功);
}
保护静态函数failroll($味精= 'roll失败){
返回的数组('code=自我::fail_code,'msg ' = $味精);
}
公共静态函数滚(){
如果(假:checkaward美元= =自我:){
回归自我::failroll('awards数据格式不
正确!;
}
结果(0美元= mt_rand自::$启源);
provalue = 0美元;
foreach(自::awardsarr美元为{ $ _key = >价值)
美元:美元provalue ProField } = {自我价值;
如果($结果provalue美元){
回归自我::successroll($ _key);
}
}
回归自我::failroll('wrong);
}
更改概率字段名称
公共静态函数setprofield($场= null){
如果(!空($字段){
自::$ ProField = $场;
}
}
/奖品
公共静态函数setawards($奖){
自::awardsarr美元=美元奖;
自::checkawards();
}
}
2。示例代码:
复制代码如下:$ =数组(
0=阵列('info= 'pro= > 15,可能性15 %),
1=阵列('info= 'pro= > 25,可能州%),
2=阵列('info= 'pro= > 40,可能的40%),
3=阵列('info= 'pro= > 20,可能20 %),
);
lottery_tool::setprofield('pro);
lottery_tool::setawards($奖);
结果=数组();
为($ i = 10000;$ i){
结果:美元{ } = lottery_tool:卷();
}
foreach(美元美元美元的结果键=值){
美元价值的'roll_key奖{ { } } { } + 'num;
}
回声';
var_dump($奖);
结果如下:
复制代码代码如下:数组
= > 0
阵列
亲= int 15
可能of'info= >字符串15 %(长度= 15)
1596
= > 1
阵列
亲= int 25
可能of'info= >字符串'25 %(长度= 15)
2484
= > 2
阵列
亲= int 40
可能of'info= >字符串的40%(长度= 15)
3939
= > 3
阵列
亲= int 20
可能of'info= >字符串20 %(长度= 15)
1981
希望本文能对大家的PHP
程序设计有所帮助。