通过随机数生成兑换码和概率生成随机数

以下的方法是可以用来生成兑换码,以及按概率处理生成随机数的方法

首先是按概率生成随机数的方法,假设奖品有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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值