php实现可以设置中奖概率的抽奖程序代码分享

php实现可以设置中奖概率的抽奖程序代码分享

这篇文章主要介绍了一个抽奖程序,要求一等奖的中奖概率是0.12%,二等奖中奖概率是3%,三等奖中奖概率是12%,其他中奖概率是都是谢谢惠顾

代码如下:

<?php

/**

* 抽奖

* @param int $total

*/

function getReward($total=1000)

{

$win1 = floor((0.12*$total)/100);

$win2 = floor((3*$total)/100);

$win3 = floor((12*$total)/100);

$other = $total-$win1-$win2-$win3;

$return = array();

for ($i=0;$i<$win1;$i++)

{

$return[] = 1;

}

for ($j=0;$j<$win2;$j++)

{

$return[] = 2;

}

for ($m=0;$m<$win3;$m++)

{

$return[] = 3;

}

for ($n=0;$n<$other;$n++)

{

$return[] = '谢谢惠顾';

}

shuffle($return);

return $return[array_rand($return)];

}

$data = getReward();

echo $data;

?>