Php/docs/function.random-int

来自菜鸟教程
跳转至:导航、​搜索

random_int

(PHP 7)

random_intGenerates cryptographically secure pseudo-random integers


说明

random_int ( int $min , int $max ) : int

Generates cryptographic random integers that are suitable for use where unbiased results are critical, such as when shuffling a deck of cards for a poker game.

The sources of randomness used for this function are as follows:

  • On Windows, » CryptGenRandom() will always be used. As of PHP 7.2.0, the » CNG-API will always be used instead.
  • On Linux, the » getrandom(2) syscall will be used if available.
  • On other platforms, /dev/urandom will be used.
  • If none of the aforementioned sources are available, then an Exception will be thrown.

Note:

Although this function was added to PHP in PHP 7.0, a » userland implementation is available for PHP 5.2 to 5.6, inclusive.

参数

min
The lowest value to be returned, which must be PHP_INT_MIN or higher.
max
The highest value to be returned, which must be less than or equal to PHP_INT_MAX.


返回值

Returns a cryptographically secure random integer in the range min to max, inclusive.


错误/异常

  • If an appropriate source of randomness cannot be found, an Exception will be thrown.
  • If invalid parameters are given, a TypeError will be thrown.
  • If max is less than min, an Error will be thrown.


范例

Example #1 random_int() example

<?phpvar_dump(random_int(100, 999));var_dump(random_int(-1000, 0));?>

以上例程的输出类似于:


int(248)
int(-898)

参见

  • random_bytes() - Generates cryptographically secure pseudo-random bytes