📜  PHP程序生成给定范围内的随机数(最小值,最大值)

📅  最后修改于: 2022-05-13 01:54:10.974000             🧑  作者: Mango

PHP程序生成给定范围内的随机数(最小值,最大值)

随机数可以通过多种方式生成,其中一些是加密安全的,另一些则不是。 rand() 和 random_int() 等内置函数可用于获取范围内的随机数。

使用 rand()函数: rand()函数在给定范围之间或 0 和默认最大值 (getgrandmax()) 之间生成一个伪随机数,这取决于系统。

句法:

int rand( $min, $max )

参数: rand()函数接受两个可选参数,如上文所述和下文所述。

  • $min:可选参数,用于设置随机数的下限。 min 的默认值为 0。
  • $max:可选参数,用于设置随机数的上限。 max 的默认值是 getgrandmax() 的返回值,这取决于系统(对于 Windows 是 32767)。

程序1:使用rand()函数生成随机数的PHP程序。




输出:
Random number: 77551982
Random number in range (7, 100): 37

注意: rand()函数是伪随机函数,这意味着它从机器中获取种子并根据它生成数字。因此,数字生成方法不是完全随机的。它可以在一定程度上被跟踪。所以它在密码学上是不安全的。它不用于随机化非常重要的密码学。要生成加密安全的随机数,请使用 random_int()函数。

使用 random_int()函数: random_int()函数用于生成加密安全的随机数。这些数字可用于无偏结果。 Windows 中的函数CryptGenRandom() 和 Linux 中的 getrandom(2) 系统调用来生成随机数。

句法:

int random_int( $min, $max )

参数: random_int()函数接受上面提到和下面描述的两个参数。

  • $min:保存随机数的下限。
  • $max:保存随机数的上限。

程序 2:使用 random_int()函数生成范围内的随机数。


输出:
Random number in range (35, 100): 93
Random number in range (10, 30): 28