<?php
//配置奖项数组
$arr_prize = array(
array('id'=>1,'prize'=>'iphone7','v'=>1),
array('id'=>2,'prize'=>'平板电脑','v'=>10),
array('id'=>3,'prize'=>'100元红包','v'=>15),
array('id'=>4,'prize'=>'50元红包','v'=>24),
array('id'=>5,'prize'=>'很遗憾没有中奖','v'=>50)
);
//抽奖算法
function get_rand($arr)
{
$result = '';
$sum = array_sum($arr);
foreach ($arr as $key => $value)
{
$r = mt_rand(1,$sum);
if($r <= $value)
{
$result = $key;
break;
}else
{
$sum -= $value;
}
}
unset($arr);
return $result;
}
//抽奖
foreach ($arr_prize as $key => $value)
{
$arr[$value['id']] = $value['v'];
}
$id = get_rand($arr);
$res['yes'] = $arr_prize[$id-1]['prize'];
unset($arr_prize[$id-1]);//把中奖项删除
shuffle($arr_prize); //打乱数组顺序
for($i=0;$i<count($arr_prize);$i++){
$pr[] = $arr_prize[$i]['prize'];
}
$res['no'] = $pr;
var_dump($res);
PHP抽奖代码
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。