
代码如下:
<?php
/**
*
抽奖
*
@param
int
$total
*/
function
getReward($total=1000)
{
$win1
=
floor((0.12*$total)/100)
$win2
=
floor((3*$total)/100)
$win3
=
floor((12*$total)/100)
$other
=
$total-$win1-$win2-$win3
$return
=
array()
for
($i=0$i<$win1$i++)
{
$return[]
=
1
}
for
($j=0$j<$win2$j++)
{
$return[]
=
2
}
for
($m=0$m<$win3$m++)
{
$return[]
=
3
}
for
($n=0$n<$other$n++)
{
$return[]
=
'谢谢惠顾'
}
shuffle($return)
return
$return[array_rand($return)]
}
$data
=
getReward()
echo
$data
?>
虽说我没写过,但作为看过一些基础知识的开发者还是可以给你一些提议的首先就是数据源,也就是采集的目标,你必须十分清楚目标源URL的规律并总结出对应的算法,这样每次开奖后只需要从用算法算出来的URL取数据,再利用后面的步骤挖掘数据基本上就可以了
其次是数据挖掘,说人话就是找金子,从数据源URL中把整个网页的代码都down下来(其实这才是我们需要的数据源),然后你必须十分了解该网页的结构规律,再根据规律用算法将关键的部分筛选出来,根据源网站的规则将这些关键数据排在一起
当然你要考虑的问题还有一个,那就是在什么时间去采集数据,对于返回回来的各种数据要如何应对。光这一点就很伤脑筋了,因为你有可能down下来的是404页面,有可能是503、504等错误页面,要考虑的问题还是很多的。我是不懂什么双色球了,就数据采集和数据挖掘这块凭我那还没生锈的脑子希望能给你一些帮助吧
没有作弊的一般是按次数,(当然也有概率因素),有作弊的一般是按时间,理论上没有作弊的话,可以这样实现概率,比如10/100000出现A,100/100000出现B,其他都出现C,那么实现这个要求可以生成一个100000以内的随机数,然后然后根据他进行判断,如果小于10,那么出现A,大于10小于110,出现B,大于110出现C,
上面的正常的不作弊的中奖概率生成,完全靠系统随机产生
不过对于一般的中奖FLASH,只要是附加了现实的金钱的话,都会弄一些时间或者特殊的中奖控制措施,只要在前面的判断中加入时间的判断就可以实现了
一般的FLASH中奖都只是用FLASH来显示结果而已,生成随机数然后比较都是靠后台的ASP或者PHP脚本实现的,所以光靠FLASH最多只能说你可以没有限制的实现不停的抽奖(也就是不停的调用ASP或者PHP脚本),而不可能实现肯定抽中奖!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)