(PHP 4, PHP 5)
uniqid — Génère un identifiant unique
$prefix
= ""
[, bool $more_entropy
= false
]] )Génère un identifiant unique, préfixé, basé sur la date et heure courante en microsecondes.
prefix
Peut être utile, par exemple, pour identifier facilement différents hôtes, si vous générez simultanément des fichiers depuis plusieurs hôtes, à la même microseconde.
Sans prefix
(préfixe vide), la
chaîne retournée fera 13 caractères. Si
more_entropy
est à TRUE
, elle fera 23
caractères.
more_entropy
Si le paramètre optionnel more_entropy
est
TRUE
, uniqid() ajoutera une entropie
"combined LCG" à la fin de la valeur retournée,
ce qui augmente la probabilité de l'unicité du résultat.
Retourne un identifiant unique, sous la forme d'une chaîne de caractères.
Exemple #1 Exemple avec uniqid()
<?php
/* Un identifiant unique, comme : 4b3403665fea6 */
printf("uniqid(): %s\r\n", uniqid());
/* Nous pouvez également préfixer l'identifiant unique,
* ce qui revient à :
*
* $uniqid = $prefix . uniqid();
* $uniqid = uniqid($prefix);
*/
printf("uniqid('php_'): %s\r\n", uniqid('php_'));
/* Nous pouvons aussi activer le paramètre more_entropy,
* requis par quelques systèmes, comme Cygwin. Ceci fera que
* uniqid() produira une valeur comme : 4b340550242239.64159797
*/
printf("uniqid('', true): %s\r\n", uniqid('', true));
?>
Version | Description |
---|---|
5.0.0 |
Le paramètre prefix est devenu optionnel.
|
4.3.1 |
La limite de 114 caractères de long pour le paramètre
prefix a été augmentée.
|
Cette fonction ne génère pas un jeton cryptographiquement sécurisé. En fait, sans passer aucun paramètre supplémentaire, la valeur retournée est à peine différente de celle renvoyée par la fonction microtime(). Si vous devez générer des jetons cryptographiques de sécurité, utilisez la fonction openssl_random_pseudo_bytes().
Note:
Sous Cygwin, le paramètre
more_entropy
doit être passé àTRUE
pour que cette fonction fonctionne.