php如何实现大转盘功能

技术php如何实现大转盘功能本篇内容介绍了“php如何实现大转盘功能”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

本文介绍了“php如何实现大转盘功能”的知识。很多人在实际案件操作中都会遇到这样的困难。接下来,让边肖带领大家学习如何应对这些情况!希望大家认真阅读,学点东西!

php大转盘功能的实现方法:1。组装奖励数组,如“$ prize _ arr=array(.)";2.计算获胜概率;3.把胜利的形势还给我。

php如何实现大转盘功能

本文的操作环境:windows7系统,PHP7.1,DELL G3计算机

php 怎么实现大转盘功能?

大转盘PHP抽奖算法的实现

流程:

1.组装奖品阵列,2。计算概率,3。归还胜利的局面。

代码如下:中奖概率‘v’可以在后台设置,要传递给这个方法,注意传递整数。

function get _ gift(){ 0

//组装奖励阵列

//奖品id、奖品、概率

$prize_arr=array(

' 0 '=数组(' id'=1,'奖品'='平板',' v'=0),

1 '=数组(' id'=2,'奖品'='数码相机',' v'=0),

2 '=数组(' id'=3,'奖品'='扬声器设备',' v'=0),

3 '=数组(' id'=4,'奖品'=' 4G盘',' v'=5),

4 '=数组(' id'=5,'奖品'='10Q硬币',' v'=0),

5 '=数组(' id'=6,'奖品'='空奖品',' v'=5),

);

foreach($ price _ arras $ key=$ val){ 0

$arr[$val['id']]=$val['v '

;];//概率数组   
        }    
        $rid = $this->get_rand($arr); //根据概率获取奖项id   
        $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; 
        // var_dump($res);
          
        if($res['yes']!='空奖'){  
            $result['status']=1;  
            $result['name']=$res['yes'];  
        }else{  
            $result['status']=-1;  
            $result['msg']=$res['yes'];  
        }   
        //return $result;  
        var_dump($result);
    }  
    //计算中奖概率
    function get_rand($proArr) {   
      $result = '';   
      //概率数组的总概率精度   
      $proSum = array_sum($proArr);   
      // var_dump($proSum);
      //概率数组循环   
      foreach ($proArr as $key => $proCur) {   
        $randNum = mt_rand(1, $proSum);  //返回随机整数 
        if ($randNum <= $proCur) {   
          $result = $key;   
          break;   
        } else {   
          $proSum -= $proCur;   
        }   
      }   
      unset ($proArr);   
      return $result;   
    }

效果图:

php如何实现大转盘功能

“php如何实现大转盘功能”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/95840.html

(0)

相关推荐

  • Windows如何实现任务计划隐藏显示黑窗口

    技术Windows如何实现任务计划隐藏显示黑窗口小编给大家分享一下Windows如何实现任务计划隐藏显示黑窗口,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!Windows 任务计划隐藏显示黑窗口,主要通

    攻略 2021年11月18日
  • python和sqlite3数据库如何实现简单登陆注册功能

    技术python和sqlite3数据库如何实现简单登陆注册功能这篇文章将为大家详细讲解有关python和sqlite3数据库如何实现简单登陆注册功能,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后

    攻略 2021年12月4日
  • 如何分析采样原理的另类解读

    技术如何分析采样原理的另类解读如何分析采样原理的另类解读,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。我们知道单片机是数字芯片,只认识由0和1组成的逻辑序列

    攻略 2021年12月3日
  • 关于Java和.Net的感想有哪些

    技术关于Java和.Net的感想有哪些本篇文章给大家分享的是有关关于Java和.Net的感想有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

    攻略 2021年12月2日
  • js变量类型和数据类型(js如何判断变量的数据类型)

    技术JS的数据类型和变量指的是什么JS的数据类型和变量指的是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。JS的数据类型和变量JavaScript 有六

    攻略 2021年12月14日
  • IP代理软件怎么助力新媒体增长

    技术IP代理软件怎么助力新媒体增长小编给大家分享一下IP代理软件怎么助力新媒体增长,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、在各种方式

    攻略 2021年11月1日