我试图获得1到6之间的数字,并且有更多机会接近1。
我试过这个:
<li>{{Faker\Factory::create()->biasedNumberBetween($min = 10, $max = 20, $function = 'unbiased')}}</li>
我要做的是生成一个从1到6 rand(1,6);
的数字但是使数字更接近于1,因为较低的数字将比其他数字更重要。
答案 0 :(得分:3)
这样的东西?
<?php
function weightedRand($min, $max, $weightedMax) {
$arr = array();
for($i = 0; $i < 10; $i++) {
$arr[] = rand($min, $weightedMax);
}
$arr[] = rand($min, $max);
return $arr[rand(0,10)];
}
echo weightedRand(1,6, 3);
?>
低于4的数字现在比上面的数字更可能:)