rand

Generate a random integer

Description

int rand ( void )
int rand ( int $min , int $max )

If called without the optional min, max arguments rand returns a pseudo-random integer between 0 and getrandmax. If you want a random number between 5 and 15 (inclusive), for example, use rand(5, 15).

Caution

This function does not generate cryptographically secure values, and should not be used for cryptographic purposes. If you need a cryptographically secure value, consider using random_int, random_bytes, or openssl_random_pseudo_bytes instead.

Note: On some platforms (such as Windows), getrandmax is only 32767. If you require a range larger than 32767, specifying min and max will allow you to create a range larger than this, or consider using mt_rand instead.

Note: As of PHP 7.1.0, rand uses the same random number generator as mt_rand. To preserve backwards compatibility rand allows max to be smaller than min as opposed to returning FALSE as mt_rand.

Parameters

min

The lowest value to return (default: 0)

max

The highest value to return (default: getrandmax)

Return Values

A pseudo random value between min (or 0) and max (or getrandmax, inclusive).

Changelog

Version Description
7.1.0 rand has been made an alias of mt_rand.

Examples

Example #1 rand example

<?php
echo rand() . "\n";
echo 
rand() . "\n";

echo 
rand(515);
?>

The above example will output something similar to:

7771
22264
11

Notes

Warning

min max range must be within the range getrandmax. i.e. (max - min) <= getrandmax Otherwise, rand may return poor-quality random numbers.

See Also

  • srand
  • getrandmax
  • mt_rand
  • random_int
  • random_bytes
  • openssl_random_pseudo_bytes