php随机抽奖

貌似有些不合理,麻烦大家帮忙指正指正!谢谢~

<?php
    header("content-type:text/html;charset=utf-8");
    function getv($k,$arr){
        for($j=$k;$j>=0;$j--){
            if($j==0){
                $tmp[‘b‘]=intval(0);
                $tmp[‘e‘]=intval($arr[$j][‘v‘]);
                return $tmp;
            }else{
                $tmp[‘b‘]=intval($arr[$j-1][‘e‘]);
                $tmp[‘e‘]=intval($arr[$j-1][‘e‘]+$arr[$j][‘v‘]);
                return $tmp;
            }
        }
    }

    function dorand(){
        //奖品
        $prize_arr = array(
            ‘0‘ => array(‘id‘=>1,‘prize‘=>‘平板电脑‘,‘v‘=>3),
            ‘1‘ => array(‘id‘=>2,‘prize‘=>‘数码相机‘,‘v‘=>5),
            ‘2‘ => array(‘id‘=>3,‘prize‘=>‘音箱设备‘,‘v‘=>10),
            ‘3‘ => array(‘id‘=>4,‘prize‘=>‘4G优盘‘,‘v‘=>12),
            ‘4‘ => array(‘id‘=>5,‘prize‘=>‘Q币10元‘,‘v‘=>20),
            ‘5‘ => array(‘id‘=>6,‘prize‘=>‘下次没准就能中哦‘,‘v‘=>50),
        );
        //计算概率范围
        for($i=0;$i<count($prize_arr);$i++){
            $tmp = getv($i,$prize_arr);
            $prize_arr[$i][‘b‘] = $tmp[‘b‘];
            $prize_arr[$i][‘e‘] = $tmp[‘e‘];
        }

        //获取概率
        foreach ($prize_arr as $key => $val) {
            $arr[$val[‘id‘]][‘v‘] = $val[‘v‘];
            $arr[$val[‘id‘]][‘b‘] = $val[‘b‘];
            $arr[$val[‘id‘]][‘e‘] = $val[‘e‘];
            $arr[$val[‘id‘]][‘prize‘] = $val[‘prize‘];
            //获取概率总和
            $sum +=$arr[$val[‘id‘]][‘v‘];
        }
        ///产生随机数
        $r = mt_rand(1, $sum);
        //var_dump($arr);
        //遍历数据
        foreach($arr as $k=>$v){
            //exit;
            //判断概率区间
            if(($v[‘b‘]<=$r && $v[‘e‘]>=$r)){
                echo "随机数:".$r . "\t" . "概率".$v[‘b‘]."--".$v[‘e‘] . "\t"."总概率:".$sum. "\n";
                //返回中奖id
                $id = $k;
                return $prize = $arr[$k][‘prize‘];
                break;
            }
        }
    }

    for($z=1;$z<=3;$z++){
        echo "\r\n第【".$z."】次中奖奖品为:".dorand()."<p>";
    }

?>

php随机抽奖,布布扣,bubuko.com

时间: 2024-12-21 03:17:00

php随机抽奖的相关文章

JQ广告弹窗&amp;随机抽奖————JQ

1.JQ广告弹窗 <div id="flo"> <img src="image.jpeg"> </div> <script> var flo = document.getElementById('flo'); var open = document.getElementById('open'); var max_left = document.documentElement.clientWidth - flo.offs

Android自定义效果——随机抽奖

那天逛android开源代码的时候,看到一个wheel menu的自定义效果,就是类似人家的那种转盘抽奖,把人家工程看了下,觉得很好玩,但是不想在他上面改,于是就自己想了一个类似的随即抽奖的效果,自我感觉比他做得好.那个开源项目地址:https://github.com/anupcowkur/Android-Wheel-Menu 我这个项目地址:http://download.csdn.net/detail/u012321815/8036345 我这个最初是想做一个大家随即抽一个请吃饭的应用.不

随机抽奖软件

Form类 using System;using System.Collections.Generic;using System.Drawing;using System.IO;using System.Windows.Forms;using Tools;namespace Randomdraw{ public partial class RandomForm : Form { ConfigEntity config; bool isStart = true; List<string> nam

jquery+php实现公司多人随机抽奖

抽奖页面+js代码 <div class="wardGame"> <table id="lottery" cellspacing= "0" cellpadding= "0" border= "0"> <{foreach from=$showList item=tmp}> <tr> <{foreach from=$tmp item=t}> <{

php随机抽奖实例分析

<?php header('Content-type:text/html;charset=utf-8'); /** * 抽奖工具 */ class lottery_tool { protected static $awardsArr; protected static $proField = 'probability'; protected static $proSum = 0; protected static $checkAward = false; const SUCCESS_CODE =

Java 随机抽奖

package Third; import java.util.Scanner; public class LotteryOdds { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in = new Scanner(System.in); System.out.println("How many numbers do you need to draw?"); int

jquery输入数字随机抽奖特效

简介:jQuery自定义数值抽奖活动代码是一款点击开始按钮计算机会产生玩家输入范围内的随机数,点击停止按钮,将显示数字最终结果的效果. 效果展示 http://hovertree.com/texiao/jquery/76/ 效果图如下: 代码如下: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title>jQuery自定义数值抽奖活动代码 -

C# 随机 抽奖 50个随机码 不重复

static List<int> Given50RandomNumbers() { List<int> intList = new List<int>(); for(int i=1;i<=50;i++) { intList.Add(i); } if(intList.Count>0) { return intList; } return null; } static void Main(string[] args) { List<int> intL

安卓用线程实现随机抽奖

import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.TextView; public class MainActivity extends Activity { TextView