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.

📘 Naucz się w lekcji →