< zpět na seznam funkcí

PHP funkce uniqid()

Dostupnost ve verzích: PHP 4.0

Vygeneruje unikátní identifikátor.

Používá se zejména pro generování ID v tabulkách, které jsou uloženy po částech na více serverech a dochází k pravidelné synchronizaci. Pokud databáze běží na více místech současně, nelze zaručit unikátnost každého číselného ID jako autoincrement (protože by musel existovat centrální server, co je přiděluje), proto se používá UID, tedy string, který má na každém stroji jiný prefix a generuje se jen jeho vnitřní struktura, ale základ zůstane stejný. Nedochází tedy ke kolizi identifikátorů při následné synchronizaci.

Vygenerovaný identifikátor obsahuje pomlčky a další znaky. Pokud potřebujeme garantovat vždy stejnou délku po sobě jdoucích písmen a číslic, můžeme identifikátor zahashovat: md5(uniqid()).

Parametry

Parametr Datový typ Výchozí hodnota Poznámka
$prefix string "", Může být užitečné, například, pokud generujete identifikátory současně na několika serverech, které by mohly generovat identifikátor ve stejné mikrosekundě.
$more_entropy bool false Je-li nastavena na hodnotu true, uniqid přidá na konci návratové hodnoty další entropii (pomocí kombinovaného lineárního kongruenčního generátoru), což by mělo činit výsledky jedinečnější.

Návratové hodnoty

string

Unikátní identifikátor jako string.

Další zdroje

https://php.net/manual/en/function.uniqid.php

Jan Barášek     Více o autorovi

Autor článku podniká jako fullstack senior developer v Praze. Za svůj život napsal stovky středních i velkých webů, fungujících dodnes. Během spolupráce nabral hluboké zkušenosti, které na tomto webu předává dál.

Rád vám pomůžu:

Potřebuji poradit Chci konzultaci nebo službu Hledám práci

Potřebujete poradit s PHP?

Nabízím trénink vývojářů, konzultace, školení a analýzu návrhových vzorů. Osobně v Praze nebo přes Skype.

Napište mi, pokud si nevíte rady.

Lektor: Jan Barášek

Pomohl Vám tento článek?