Maison  >  Article  >  développement back-end  >  Exemple de code PHP pour réussir

Exemple de code PHP pour réussir

小云云
小云云original
2018-03-03 13:15:291767parcourir

Cet article partage principalement avec vous l'exemple de code php pour réussir, en espérant aider tout le monde.

<?php 
//设置中奖概率


     $prize_arr = array(
  
      0=>array( &#39;id&#39;=>1,&#39;prize&#39;=>&#39;现金500W&#39;,&#39;v&#39;=>1 ), //概率为1/200
      1=>array( &#39;id&#39;=>2,&#39;prize&#39;=>&#39;iphone7&#39;,&#39;v&#39;=>5 ),  
      2=>array( &#39;id&#39;=>3,&#39;prize&#39;=>&#39;耐克跑鞋&#39;,&#39;v&#39;=>10 ),
      3=>array( &#39;id&#39;=>4,&#39;prize&#39;=>&#39;魔声耳机&#39;,&#39;v&#39;=>24 ),
      4=>array( &#39;id&#39;=>5,&#39;prize&#39;=>&#39;蓝牙音响&#39;,&#39;v&#39;=>60 ),
      5=>array( &#39;id&#39;=>6,&#39;prize&#39;=>&#39;现金1元&#39;,&#39;v&#39;=>100000 )
    );
 /*
16  * 对数组进行处理
17  */


foreach( $prize_arr as $k => $v ){
     //使用新数组item
    $item[$v[&#39;id&#39;]] = $v[&#39;v&#39;]; 
    
}
function get_rand($item){
     $num = array_sum($item);//计算出分母200
     foreach( $item as $k => $v ){
       $rand = mt_rand(1, $num);//概率区间(整数) 包括1和200
      /*
43        *这个算法很666 
44        */
      if( $rand <= $v ){
           //循环遍历,当下标$k = 1的时候,只有$rand = 1 才能中奖 
           $result = $k;
          echo $rand.&#39;--&#39;.$v;
          break;
      }else{
           //当下标$k=6的时候,如果$rand>100 必须$rand < = 100 才能中奖 ,那么前面5次循环之后$rand的概率区间= 200-1-5-10-24-60 (1,100) 必中1块钱
          $num-=$v;
          echo &#39;*&#39;.$rand.&#39;*&#39;."&ensp;"."&ensp;"."&ensp;";
       }
     }
     return $result;
 }
 var_dump(get_rand($item));
 ?>

Recommandations associées :
Explication détaillée de l'algorithme de gain php

Exemple d'implémentation php de l'algorithme de probabilité de gain d'un programme de loterie

Analyse des idées pour implémenter la fonction d'algorithme de probabilité gagnante en PHP

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn