Muchos generadores de números aleatorios de libcs antiguas tienen características dudosas o desconocidas y son lentas. Por defecto, PHP usa el generador de números aleatorios de libc con la función rand(). La función mt_rand() es un reemplazo para esta. Usa un generador de números aleatorios con características conocidas, el Tornado de Mersenne, que es capaz de producir números aleatorios que incluso se pueden emplear para propósitos criptográficos y es cuatro veces más rápido que la media de los que provee libc. La página principal del Tornado de Mersenne puede encontrarse en http://www.math.keio.ac.jp/~matumoto/emt.html, y una versión optimizada del código del TM esta disponible en http://www.scp.syr.edu/~marc/hawk/twister.html.
Si es llamada sin los parámetros opcionales min y max mt_rand() devuelve un valor pseudo-aleatorio entre 0 y RAND_MAX. Si quiere un número aleatorio entre 5 y 15 (inclusive), use mt_rand(5,15).
Recuerde introducir la semilla del generador de números aleatorios antes de usar la instrucción con mt_srand().
Vea también mt_srand(), mt_getrandmax(), srand(), rand() y getrandmax().