uniqid

funkcja

Generuje unikalny identyfikator oparty na aktualnym czasie (mikrosekundy). Nie jest kryptograficznie bezpieczny — do plików tymczasowych, nie tokenów.

uniqid(string $prefix = "", bool $more_entropy = false): string

uniqid zwraca unikalny ciąg znaków oparty na bieżącym czasie w mikrosekundach. Parametr $prefix pozwala dodać prefiks, a $more_entropy = true dołącza dodatkową losową część (zalecane — zmniejsza ryzyko kolizji).

Uwaga: uniqid nie jest kryptograficznie bezpieczna. Nie używaj jej do generowania tokenów resetowania hasła, identyfikatorów sesji ani innych sekretów. Do bezpiecznych tokenów użyj random_bytes() lub bin2hex(random_bytes(32)).

Dobrze nadaje się do: nazw plików tymczasowych, identyfikatorów zasobów w cache, kluczy sesji deweloperskich.

<?php
declare(strict_types=1);

// Podstawowe użycie:
$id = uniqid('', true);
echo $id; // np. 6a439a4c84c0a9.41332054

// Z prefiksem — np. dla nazw plików tymczasowych:
$nazwaPlik = uniqid('upload_', true) . '.jpg';
echo $nazwaPlik; // np. upload_6a439a4c84d1f2.38291047.jpg

// Do bezpiecznych tokenów NIE używaj uniqid() — użyj:
$bezpiecznyToken = bin2hex(random_bytes(32));
echo $bezpiecznyToken; // 64 losowych znaków hex, kryptograficznie bezpiecznych