(PHP 4, PHP 5)
uniqid — Erzeugt eine eindeutige ID
Gibt eine eindeutige ID mit Präfix zurück, die auf der aktuellen Zeit in Mikrosekunden basiert.
Kann z.B. dann hilfreich sein, wenn Sie auf mehreren Hosts gleichzeitig IDs erzeugen, was im ungünstigsten Fall zur selben Mikrosekunde geschehen kann.
Bei leerem prefix ist die zurückgegebene Zeichenkette 13 Zeichen lang. Falls mehr_entropie TRUE ist, sind es 23 Zeichen.
Falls dieser Parameter auf TRUE gesetzt ist, wird uniqid() am Ende des Rückgabewertes zusätzliche mit dem Kongruenzgenerator für Pseudozufallszahlen (Combined Linear Congruential Generator) erzeugte Entropie anfügen, durch die das Ergebnis noch eindeutiger werden sollte.
Gibt eine eindeutige ID als Zeichenkette zurück.
Wenn Sie eine eindeutige ID, bzw. ein eindeutiges Token benötigen und beabsichtigen, dieses Token über das Netzwerk an den Benutzer weiter zu leiten (z.B. als Session-Cookies), ist es ratsam, dass Sie wie folgt vorgehen:
Hierdurch wird eine ID mit 32 Zeichen (ein 128 Bit-Hex-Wert) erzeugt, die nur äußerst schwer vorhersehbar ist.
Beispiel #1 uniqid()-Beispiel
<?php
// ohne Präfix
// funktioniert nur mit PHP 5 und späteren Versionen
$token = md5(uniqid());
// besser, schwierig zu erraten
$besseres_token = md5(uniqid(rand(), true));
?>
Version | Beschreibung |
---|---|
5.0.0 | Den Parameter prefix optional gemacht |
4.3.1 | Das Limit von 114 Zeichen für prefix erhöht |