uniqid

uniqid -- Erzeugt eine eindeutige ID

Beschreibung:

int uniqid ( string prefix [, boolean lcg])

uniqid( ) gibt eine eindeutige ID mit Präfix zurück . Diese basiert auf der aktuellen Zeit in Mikrosekunden . Das Präfix kann hilfreich sein , wenn sie z . B . auf mehreren Servern gleichzeitig ID´s erzeugen , was ja im ungünstigsten Fall zur selben Mikrosekunde geschehen kann . Der prefix -Parameter kann bis zu 114 Zeichen lang sein .

Ist der optionale Parameter lcg TRUE , wird uniqid( ) am Ende des Rückgabewertes zusätzliche "LCG "-Zustandswerte anfügen , durch die das Ergebnis noch eindeutiger wird .

Bei leerem prefix -Parameter ist der zurück gegebene String 13 Zeichen lang . Ist der Parameter lcg TRUE , sind es 23 Zeichen .

Anmerkung : Der lcg -Parameter ist erst ab PHP 4 bzw . PHP 3.0.13 und später verfügbar .

Wenn sie eindeutige ID´s bzw . eindeutige Token benötigen und beabsichtigen , diese Token über das Netzwerk an den Benutzer weiter zu leiten ( z.B . als Session-Cookies ) , ist es ratsam , wenn sie wie folgt vorgehen :

 
$token

 
=

 
md5

 
(

 
uniqid

 
(""))

 
;

 
/

 
/

 
kein

 
Zufalls-Anteil

 
=

 
schlecht

 
$better_token

 
=

 
md5

 
(uniqid

 
(rand()))

 
;

 
/

 
/

 
besser

 
,

 
da

 
schwer

 
zu

 
erraten





Hierdurch wird eine 32-Zeichen-ID ( 128 Bit-Hex-Wert ) erzeugt , die nur sehr schwer vorhersehbar ist .