Многие генераторы случайных чисел в старых libcs имеют сомнительные или неизвестные характеристики и работают медленно. По умолчанию PHP использует генератор случайных чисел libc с функцией rand().
mt_rand() это замена для неё. Она использует генератор случайных чисел с известными характеристиками, Mersenne Twister, который производит случайные числа, подходящие для некоторых видов криптографии (см. детали на домашних страницах), и работает в 4 раза быстрее libc. Домашняя страница Mersenne Twister находится по адресу
http://www.math.keio.ac.jp/~matumoto/emt.html, а оптимизированная версия MT-исходника находится на
http://www.scp.syr.edu/~marc/hawk/twister.html.
Если вызывается без необязательных аргументов min, max, mt_rand() возвращает псевдослучайное значение в диапазоне от 0 до RAND_MAX. Если вам нужно случайное число от 5 до 15 (включительно), например, используйте mt_rand (5, 15).