mt_rand
funkcja
Generuje pseudolosową liczbę całkowitą algorytmem Mersenne Twister. Nie nadaje się do kryptografii.
mt_rand(int $min, int $max): int
mt_rand działa jak rand, ale korzysta z algorytmu Mersenne Twister — jest szybszy i ma lepsze właściwości statystyczne. Wywołana bez argumentów zwraca liczbę od 0 do getrandmax() (zwykle 2147483647). Mimo to wciąż nie jest kryptograficznie bezpieczny. Nie używaj go do generowania tokenów, haseł ani kodów jednorazowych — do tego służy random_int.
<?php
declare(strict_types=1);
$rzut = mt_rand(1, 6);
echo $rzut; // losowa liczba 1–6
// Przetasowanie tablicy z losowym ziarnem — do gier, symulacji:
$liczby = range(1, 49);
shuffle($liczby); // shuffle wewnętrznie używa mt_rand
$szostka = array_slice($liczby, 0, 6);
Od PHP 7.1 rand jest aliasem mt_rand, więc w praktyce różnica między nimi zanikła — oba dają tę samą jakość losowości.