random_int
funkcja
Generuje kryptograficznie bezpieczną losową liczbę całkowitą z podanego zakresu.
random_int(int $min, int $max): int
random_int zwraca prawdziwie losową liczbę całkowitą z zakresu [$min, $max] (obie granice włącznie), korzystając ze źródła entropii systemu operacyjnego (/dev/urandom na Linuksie, CryptGenRandom na Windows). Jest kryptograficznie bezpieczna — możesz jej używać do tokenów, kodów weryfikacyjnych, jednorazowych PIN-ów i wszystkiego, gdzie losowość musi być nieprzewidywalna.
<?php
declare(strict_types=1);
// Bezpieczny token do e-maila weryfikacyjnego:
$token = bin2hex(random_bytes(16)); // 32 znaki hex
echo $token; // np. a3f1c8e2... (różne przy każdym wywołaniu)
// Lub bezpośrednio losowa liczba:
$pin = random_int(100000, 999999);
echo $pin; // losowy 6-cyfrowy PIN
W odróżnieniu od rand i mt_rand, wyniki random_int są nieprzewidywalne nawet gdy atakujący zna poprzednie wartości. Jeśli potrzebujesz losowych bajtów zamiast liczby, użyj random_bytes.