Forum und email

mt_rand

(PHP 4, PHP 5)

mt_rand — Gerador melhorado de números aleatórios

Descrição

int mt_rand ([ int $min ], int $max )

Muitos geradores de números aleatórios das libcs antigas são duvidosos ou com características duvidosas e lentos. Por default, o PHP utiliza o gerador de números aleatórios da libc para a função rand(). A função mt_rand() é um bom substituto para a primeira. Ela utiliza um gerador de números aleatórios com características conhecidas, o » Mersenne Twister, que produzirá números randômicos quatro vezes mais rápido que média provida pela rand() da libc.

Se chamada sem os argumentos opcionais min e max , mt_rand() retorna um pseudo número aletório enrte 0 e RAND_MAX. se você precisa de um número randômico entre 5 e 15 (inclusive), por exemplo, utilize mt_rand (5, 15).

Nota: A partir do PHP 4.2.0, não é mais necessário semear o gerador de números aleatórios com srand() ou mt_srand() pois isso é feito automaticamente.

Parâmetros

min

Menor valor opcional para ser retornado (padrão: 0)

max

Maior valor opcional para ser retornado (padrão: RAND_MAX)

Valor Retornado

Um valor inteiro entre min (ou 0) e max (ou RAND_MAX, inclusive)

Histórico

Versão Descrição
Desde o 3.0.7 Em versões anteriores a 3.0.7, o significado do parâmetro max era range . Assim, para obter os mesmos resultados do exemplo acima, você precisaria utilizar rand (5, 11) para obter um número aleatório entre 5 e 15.

Exemplos

Example#1 mt_rand() example

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

echo 
mt_rand(515);
?>

O exemplo acima irá imprimir algo similar a:

1604716014
1478613278
6