function
get_gift(){
$prize_arr
=
array
(
'0' =>
array
('id'=>1,'prize'=>'平板电脑','v'=>0),
'1' =>
array
('id'=>2,'prize'=>'数码相机','v'=>0),
'2' =>
array
('id'=>3,'prize'=>'音箱设备','v'=>0),
'3' =>
array
('id'=>4,'prize'=>'4G优盘','v'=>5),
'4' =>
array
('id'=>5,'prize'=>'10Q币','v'=>0),
'5' =>
array
('id'=>6,'prize'=>'空奖','v'=>5),
);
foreach
(
$prize_arr
as
$key
=>
$val
) {
$arr
[
$val
['id']] =
$val
['v'];
$rid
=
$this
->get_rand(
$arr
);
$res
['yes'] =
$prize_arr
[
$rid
-1]['prize'];
unset(
$prize_arr
[
$rid
-1]);
shuffle(
$prize_arr
);
for
(
$i
=0;
$i
<
count
(
$prize_arr
);
$i
++){
$pr
[] =
$prize_arr
[
$i
]['prize'];
$res
['no'] =
$pr
;
if
(
$res
['yes']!='空奖'){
$result
['status']=1;
$result
['name']=
$res
['yes'];
}
else
{
$result
['status']=-1;
$result
['msg']=
$res
['yes'];
}
var_dump(
$result
);
}
function
get_rand(
$proArr
) {
$result
= '';
$proSum
=
array_sum
(
$proArr
);
foreach
(
$proArr
as
$key
=>
$proCur
) {
$randNum
= mt_rand(1,
$proSum
);
if
(
$randNum
<=
$proCur
) {
$result
=
$key
;
break
;
}
else
{
$proSum
-=
$proCur
;
}
}
unset (
$proArr
);
return
$result
;
}