最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
php 中奖概率算法实现代码
时间:2022-06-24 14:59:34 编辑:袖梨 来源:一聚教程网
代码如下 | 复制代码 |
/** *php 中奖概率算法
* */ functionget_zj($jp,$glname='gl'){ $sum= 0; foreach($jpas$k=>$v){ $sum+=$v[$glname]; }
$R= rand(1,$sum);//获取随机数
foreach($jpas$k=>$v){ if($R<=$v[$glname] ){ return$v; } $R=$R-$v[$glname] ; }
}
//使用方法 //模拟一个从数据库中读取的 中奖配置 gl 为 中奖的概率 //例如array( 'gl' => 10 , 'title' => '一等奖');的中奖概率 = 10 / (10+20+30+40) $jp=array(); $jp[] =array('gl'=> 10 ,'title'=>'一等奖'); $jp[] =array('gl'=> 20 ,'title'=>'二等奖'); $jp[] =array('gl'=> 30 ,'title'=>'三等奖'); $jp[] =array('gl'=> 40 ,'title'=>'未中奖');
//调用 中奖概率函数 //返回中奖 信息数组 例如:array( 'gl' => 10 , 'title' => '一等奖'); $zj= get_zj($jp);
//输出数组 var_dump($zj); |
使用方法
模拟一个从数据库中读取的 中奖配置 gl 为 中奖的概率
例如array( 'gl' => 10 , 'title' => '一等奖');的中奖概率 = 10 / (10+20+30+40)
$jp = array();
$jp[] = array( 'gl' => 10 , 'title' => '一等奖');
$jp[] = array( 'gl' => 20 , 'title' => '二等奖');
$jp[] = array( 'gl' => 30 , 'title' => '三等奖');
$jp[] = array( 'gl' => 40 , 'title' => '未中奖');
调用 中奖概率函数
返回中奖 信息数组 例如:array( 'gl' => 10 , 'title' => '一等奖');
相关文章
- 人们熟悉的寄居蟹属于以下哪种分类 神奇海洋11月21日答案 11-21
- 第五人格11.22共研服有什么更新 11月22日共研服更新内容介绍 11-21
- 原神恰斯卡怎么培养 11-21
- 无期迷途四星装束是谁 11-21
- 王者荣耀帝丹高中校服怎么获得 11-21
- 光遇姆明季后续版本怎么玩 11-21