php 中奖概率算法实现代码
实现代码:
<?php header("Content-type: text/html; charset=utf-8"); /** *php 中奖概率算法 * */ function open_kj( $jp ,$glname = 'gl'){ $sum = 0; foreach($jp as $k =>$v ){ $sum += $v[$glname]; } $R = rand(1,$sum);//获取随机数 foreach( $jp as $k => $v){ if( $R <= $v[$glname] ){ return $v; } $R = $R - $v[$glname] ; } } //使用方法 //模拟一个从数据库中读取的 中奖配置 gl 为 中奖的概率 //例如array( 'gl' => 10 , 'title' => '一等奖');的中奖概率 = 10 / (10+50+100+200) $jp = array(); $jp[] = array( 'gl' => 010 , 'title' => '一等奖'); $jp[] = array( 'gl' => 050 , 'title' => '二等奖'); $jp[] = array( 'gl' => 100 , 'title' => '三等奖'); $jp[] = array( 'gl' => 200 , 'title' => '未中奖'); //调用 中奖概率函数 //返回中奖 信息数组 例如:array( 'gl' => 10 , 'title' => '一等奖'); $zj = open_kj( $jp ); //输出数组 xc($zj); function xc($array) { echo "<pre>"; print_r($array); echo "</pre>"; } ?>
转载请注明来源地址:小川编程 » https://www.youhutong.com/index.php/article/index/131.html
1、本站发布的内容仅限用于学习和研究目的.请勿用于商业或非法用途,下载后请24小时内删除。
2、本站所有内容均不能保证其完整性,不能接受请勿购买或下载,如需完整程序,请去其官方购买正版使用
3、本站联系方式Email:admin@youhutong.com ,收到邮件会第一时间处理。
4、如侵犯到任何版权问题,请立即告知本站(立即在线告知),本站将及时删除并致以最深的歉意