在bcmath擴展中,可以使用bcadd()函數來生成指定范圍內的隨機整數。以下是一個示例代碼:
function bc_random($min, $max) {
$range = bcsub($max, $min);
if ($range == '0') {
return $min;
}
$scale = strlen($range);
$random = bcdiv(strval(mt_rand()), strval(mt_getrandmax()), $scale);
$random = bcadd($random, $min, $scale);
return $random;
}
// 生成0到100之間的隨機數
$randomNumber = bc_random('0', '100');
echo $randomNumber;
在上面的示例中,首先計算出指定范圍的差值(range),然后生成一個隨機小數,將其縮放到與差值相同的位數,最后將其加上最小值,得到一個隨機整數。