$prize_arr = array( 
    '0' => array('id'=>1,'min'=>1,'max'=>29,'prize'=>'һȽ','v'=>1), 
    '1' => array('id'=>2,'min'=>302,'max'=>328,'prize'=>'Ƚ','v'=>2), 
    '2' => array('id'=>3,'min'=>242,'max'=>268,'prize'=>'Ƚ','v'=>5), 
    '3' => array('id'=>4,'min'=>182,'max'=>208,'prize'=>'ĵȽ','v'=>7), 
    '4' => array('id'=>5,'min'=>122,'max'=>148,'prize'=>'Ƚ','v'=>10), 
    '5' => array('id'=>6,'min'=>62,'max'=>88,'prize'=>'Ƚ','v'=>25), 
    '6' => array('id'=>7,'min'=>array(32,92,152,212,272,332), 
'max'=>array(58,118,178,238,298,358),'prize'=>'ߵȽ','v'=>50) 
); 
$prize_arridʶͬĽminʾԲиӦСǶȣmaxʾǶȣһȽӦСǶȣ0Ƕ30maxֵΪ1maxֵΪ29Ϊ˱齱ָָڽߡԲ˶ߵȽÿߵȽӦĽǶȷΧprizeʾݣvʾнʣǻ֣ᷢ߸vܺΪ100vֵΪ1нΪ1%ơ
н㷨վ£PHP+jQueryʵַ齱нܾĸ㷨ֱӽ
 
function getRand($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; 
} 
getRand()õļʼidǿԽŵgetRand()
 
foreach ($prize_arr as $key => $val) { 
    $arr[$val['id']] = $val['v']; 
} 
 
$rid = getRand($arr); //ݸʻȡid 
 
$res = $prize_arr[$rid-1]; //н 
$min = $res['min']; 
$max = $res['max']; 
if($res['id']==7){ //ߵȽ 
    $i = mt_rand(0,5); 
    $result['angle'] = mt_rand($min[$i],$max[$i]); 
}else{ 
    $result['angle'] = mt_rand($min,$max); //һǶ 
} 
$result['prize'] = $res['prize']; 
 
echo json_encode($result); 
УǵgetRand()ͨõĽȻݽõĽǶȷΧСǶȺǶȼһǶֵ飬Ƕangleͽprizejsonʽ
jQuery
ĵĻϣǶǰjQueryи죬ʼ齱ť̨data.phpһajaxɹؽϢתָ룬ָָλתdata.phpصĽǶֵ
 
$(function(){ 
     $("#startbtn").click(function(){ 
        lottery(); 
    }); 
}); 
function lottery(){ 
    $.ajax({ 
        type: 'POST', 
        url: 'data.php', 
        dataType: 'json', 
        cache: false, 
        error: function(){ 
            alert('ˣ'); 
            return false; 
        }, 
        success:function(json){ 
            $("#startbtn").unbind('click').css("cursor","default"); 
            var a = json.angle; //Ƕ 
            var p = json.prize; // 
            $("#startbtn").rotate({ 
                duration:3000, //תʱ 
                angle: 0, 
                animateTo:1800+a, //תǶ 
                easing: $.easing.easeOutSine, 
                callback: function(){ 
                    var con = confirm('ϲ㣬е'+p+'\nҪһ'); 
                    if(con){ 
                        lottery(); 
                    }else{ 
                        return false; 
                    } 
                } 
            }); 
        } 
    }); 
} 
ǹԶ庯lottery()lottery()data.phpһPOSTɹнϢ󣬵rotateʼתתǶɺ̨صĽǶȾ1800+aʾתĽǶȣָת6Ȧ+aȺֹͣȻڵʼ齱ťʱlottery()ת̳齱ɡ
ԱĵתתЧ̫ףĶվ£˴ת-jQuery+PHPʵֵĳ齱()