PHP Manual
Prev |  | Next

# mt_rand

(PHP 3>= 3.0.6, PHP 4 )

mt_rand -- Generate a better random value

## Description

int mt_rand ( [int min, int max])

Many random number generators of older libcs have dubious or unknown characteristics and are slow. By default, PHP uses the libc random number generator with the rand() function. mt_rand() function is a drop-in replacement for this. It uses a random number generator with known characteristics, the Mersenne Twister, which will produce random numbers that should be suitable for seeding some kinds of cryptography (see the home pages for details) and is four times faster than what the average libc provides. The Homepage of the Mersenne Twister can be found at http://www.math.keio.ac.jp/~matumoto/emt.html, and an optimized version of the MT source is available from http://www.scp.syr.edu/~marc/hawk/twister.html .

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

In older versions of PHP, you had to seed the random number generator before use with mt_srand(). Since 4.2.0 this is no longer necessary.

> Note: In versions before 3.0.7 the meaning of `max` was `range`. To get the same results in these versions the short example should be `mt_rand (5, 11)` to get a random number between 5 and 15.

See also mt_srand(), mt_getrandmax() and rand().

Prev | Home | Next
mt_getrandmax | Up | mt_srand