存档

文章标签 ‘随机数’

按指定概率随机抽取

2009年6月15日 1 条评论

$ar=array(‘a’=>30,’b'=>30,’c'=>10,’d'=>20,’e'=>10);
function myrandom($ar)
{
$ar_temp=array();
$temp=0;
foreach ($ar as $k => $v)
{
$ar_temp[$k]=array(‘min’=>$temp,’max’=>$temp+$v);
$temp+=$v;
}
$rand=rand(0,100);
$key=null;
foreach ($ar_temp as $k => $v)
{
if($rand>$v[min]&&$rand<=$v[max])
{
return $ar[$k];
break;
}
}

}

echo myrandom($ar);