📅  最后修改于: 2023-12-03 14:45:23.703000             🧑  作者: Mango
当我们需要在 PHP 中创建随机浮点数时,我们可以使用内置的 rand()
或 mt_rand()
函数。这些函数允许我们生成一个在指定范围内的随机整数,并将其转换为浮点数。
然而,默认情况下,这些函数生成的随机数可能会有很多位小数。这在某些情况下可能不是我们想要的。为了生成带有2位小数的随机浮点数,我们可以使用以下方法:
<?php
$random_num = mt_rand(1, 10000) / 100;
$random_num = round($random_num, 2);
echo $random_num;
?>
在上面的代码中,我们首先使用 mt_rand()
函数来生成一个1到10,000之间的随机整数。然后,我们将它除以100来产生一个随机的两位小数。最后,我们使用 round()
函数将结果四舍五入到两个小数位。
如果您不需要使用 mt_rand()
函数,也可以使用 rand()
替换它:
<?php
$random_num = rand(1, 10000) / 100;
$random_num = round($random_num, 2);
echo $random_num;
?>
对于这两种情况,输出的结果将非常类似,都是在1到100之间的小数。
在PHP 7.1 或更高版本中引入的 random_int()
函数可以使我们避免使用mt_rand或rand函数中存在的问题。random_int()是一个高质量的伪随机数生成器,可以产生各种数字类型的随机数。
示例代码如下:
<?php
$random_num = random_int(100,10000) / 100;
echo round($random_num,2);
?>
使用上述两种方法之一,您可以轻松地生成一个带有两位小数的随机浮点数。无论您选择使用 mt_rand()
、rand()
还是 random_int()
,都可以生成一个范围内的随机值,该值适用于您的应用程序或项目。