通过随机数生成兑换码和概率生成随机数
以下的方法是可以用來生成兌換碼,以及按概率處理生成隨機數的方法
首先是按概率生成隨機數的方法,假設獎品有30000分,20000分,10000分,3000分,2000分
function get_rand(){
$point=rand(1,1000); //生成(1~1000)的隨機數
if($point==1){ //當隨機數為1時候,得到30000分,即千分之一機會
$point=30000;
}else if($point>1&&$point<=11){ //2~11時候,得20000分,百分之一機會
$point = 20000;
}else if($point>11&&$point<=51){ //下面這些同理
$point=10000;
}else if($point>51&&$point<=251){
$point=3000;
}else{
$point=2000;
}
return $point;
}
這個方法可以自己通過控制概率達到控制一些中獎活動和抽獎事件的發生,當獎品足夠大,只要主辦方能把一些獎品設成概率為0或者是更加低概率就好。我還在網上看到有其它方法,不過不是很理解,這種感覺有點笨,但是還能用。
下面這個方法,大家可以用來生成兌換碼,也是通過隨機數生成,喜歡的朋友可以直接復制代碼就能用
function get_code(){
$len=5; //在時間戳后加多少個隨機數,自己喜歡
$chars='ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz';
$string=time();
for(;$len>=1;$len--)
{
$position=rand()%strlen($chars);
$position2=rand()%strlen($string);
$string=substr_replace($string,substr($chars,$position,1),$position2,0);
}
return $string;
}
轉載于:https://www.cnblogs.com/Mahon-Zone/p/6945836.html
總結
以上是生活随笔為你收集整理的通过随机数生成兑换码和概率生成随机数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: nodejs链接kafka示例(prod
- 下一篇: Source Insight 常用设置和