<?php
function probability($prize) {
//return rand(0,6);
$probability_all = array(0,0);
foreach($prize as $i=>$val) {
list($title,$desc,$money,$probability) = $val;
$probability_all[0] += $probability[0];
$probability_all[1] += $probability[1];
}
if ( empty($prize) ) {
return -1;
}
//print_r($prize);exit;
$probability_all[1] = intval($probability_all[1] / count($prize));
$yes = mt_rand(1,$probability_all[1]);
//$prize = -1;
if ( $probability_all[0] <= 0 || $probability_all[1] <= 0 || $yes > $probability_all[0] ) {
} else {
$list = array();
$add = 0;
$total = 0;
foreach($prize as $i=>$val) {
list($title,$desc,$money,$probability) = $val;
if ( $probability[0] <= 0 ) {
continue;
}
$total = $add += $probability[0];
$list[$add] = $i;
}
$yes = mt_rand(1,$total);
foreach ($list as $k => $v) {
if ( $yes <= $k ) {
$prize = $v;
break;
}
}
}
return $prize;
}
function roundq($p) {
if($p==1)
{
$a=-18;
$b=18;
}
else
{
$a=($p-1)*36;
$b=$a+36;
}
return mt_rand($a,$b);
}
$prize[] = array('一等奖', 'iphon6s', 1, array(0,1000) );
$prize[] = array('二等奖', '200积分', 2, array(50,1000) );
$prize[] = array('三等奖', '花奇楠手串', 3, array(10,1000) );
$prize[] = array('四等奖', '再接再厉', 4, array(350,1000) );
$prize[] = array('五等奖', '雕花茶盘', 5, array(1,1000) );
$prize[] = array('六等奖', '50张云购券', 6, array(39,1000) );
$prize[] = array('七等奖', '皇宫椅', 7, array(0,1000) );
$prize[] = array('八等奖', '10张云购券', 8, array(100,1000) );
$prize[] = array('九等奖', '10夺木币', 9, array(100,1000) );
$prize[] = array('十等奖', '继续努力', 10, array(350,1000) );
$res=probability($prize);
echo $res;
echo '<br>';
$result=roundq($res);
echo $result;
?>
function probability($prize) {
//return rand(0,6);
$probability_all = array(0,0);
foreach($prize as $i=>$val) {
list($title,$desc,$money,$probability) = $val;
$probability_all[0] += $probability[0];
$probability_all[1] += $probability[1];
}
if ( empty($prize) ) {
return -1;
}
//print_r($prize);exit;
$probability_all[1] = intval($probability_all[1] / count($prize));
$yes = mt_rand(1,$probability_all[1]);
//$prize = -1;
if ( $probability_all[0] <= 0 || $probability_all[1] <= 0 || $yes > $probability_all[0] ) {
} else {
$list = array();
$add = 0;
$total = 0;
foreach($prize as $i=>$val) {
list($title,$desc,$money,$probability) = $val;
if ( $probability[0] <= 0 ) {
continue;
}
$total = $add += $probability[0];
$list[$add] = $i;
}
$yes = mt_rand(1,$total);
foreach ($list as $k => $v) {
if ( $yes <= $k ) {
$prize = $v;
break;
}
}
}
return $prize;
}
function roundq($p) {
if($p==1)
{
$a=-18;
$b=18;
}
else
{
$a=($p-1)*36;
$b=$a+36;
}
return mt_rand($a,$b);
}
$prize[] = array('一等奖', 'iphon6s', 1, array(0,1000) );
$prize[] = array('二等奖', '200积分', 2, array(50,1000) );
$prize[] = array('三等奖', '花奇楠手串', 3, array(10,1000) );
$prize[] = array('四等奖', '再接再厉', 4, array(350,1000) );
$prize[] = array('五等奖', '雕花茶盘', 5, array(1,1000) );
$prize[] = array('六等奖', '50张云购券', 6, array(39,1000) );
$prize[] = array('七等奖', '皇宫椅', 7, array(0,1000) );
$prize[] = array('八等奖', '10张云购券', 8, array(100,1000) );
$prize[] = array('九等奖', '10夺木币', 9, array(100,1000) );
$prize[] = array('十等奖', '继续努力', 10, array(350,1000) );
$res=probability($prize);
echo $res;
echo '<br>';
$result=roundq($res);
echo $result;
?>