Maison php教程 PHP开发 Générer un identifiant unique à l'aide de la fonction PHP uniqid

Générer un identifiant unique à l'aide de la fonction PHP uniqid

Dec 28, 2016 pm 03:32 PM

Les scénarios d'application pour générer des identifiants uniques sont très courants, tels que les noms de fichiers de cache temporaires, les variables temporaires, les codes de sécurité temporaires, etc. La fonction uniqid() génère un identifiant unique basé sur l'heure actuelle en microsecondes. Étant donné que la génération d’un identifiant unique est liée à un temps de microseconde, le caractère unique de l’identifiant est très fiable.

L'ID unique généré renvoie une chaîne de 13 chaînes par défaut. Si le préfixe de l'ID unique n'est pas défini, il peut renvoyer jusqu'à 23 chaînes de longueur s'il est combiné avec le md5(. ), la fiabilité de l'ID unique généré sera plus élevée. Le plus grand avantage de cet ID généré est qu'il peut être trié, en particulier pour certaines valeurs qui doivent être stockées dans la base de données.

1. Prototype de fonction

string uniqid ( [string prefix [, bool more_entropy]] )
Copier après la connexion

peut définir le préfixe et la longueur de l'ID unique

2 Version compatible

PHP 3. , PHP 4, PHP 5

3, utilisation de base et exemples de fonctions

1, générer un identifiant unique

<?php
echo uniqid();
?>
Copier après la connexion

2. Combiné avec la fonction md5() pour générer un identifiant unique

<?php
echo md5(uniqid());
?>
Copier après la connexion

Sortie : dfbc5c8c6438de075da28b3c8a413fd0

3, générer plusieurs identifiants uniques, dus à Mesurés en microsecondes

<?php
echo uniqid();
echo uniqid();
echo uniqid();
?>
Copier après la connexion

🎜>

À en juger par les résultats générés, les identifiants uniques peuvent être triés.

L'utilisation de la fonction uniqid() pour générer un identifiant unique peut être utilisée pour générer à la fois des identifiants temporaires et des identifiants uniques permanents (base de données de stockage).

ps : Plusieurs solutions pour générer des identifiants uniques en php

L'éditeur suivant a compilé trois solutions pour vous, le contenu spécifique est le suivant :

1. () . mt_rand(1,1000000));

Cette méthode a une certaine probabilité de duplication


2. Fonction intégrée PHP uniqid()

uniqid() La fonction génère un identifiant unique basé sur l'heure actuelle en microsecondes.

Il y a une phrase dans le manuel de référence de w3school : "Parce qu'il est basé sur l'heure système, l'ID généré par cette fonction n'est pas optimal. Si vous devez générer un absolu. Pour un identifiant unique, utilisez la fonction md5()".

La méthode suivante renvoie des résultats similaires : 5DDB650F-4389-F4A9-A100-501EF1348872

com_create_guid() est fourni avec PHP. la méthode de génération d'un identifiant unique semble avoir disparu après PHP5.

3. Le manuel de référence officiel uniqid() contient des méthodes fournies par les utilisateurs, et les résultats sont similaires : {E2DFFFB3-571E-6CFC-4B5C-9FEDAAF2EFD7>

function uuid() {
  if (function_exists ( &#39;com_create_guid&#39; )) {
    return com_create_guid ();
  } else {
    mt_srand ( ( double ) microtime () * 10000 ); //optional for php 4.2.0 and up.随便数播种,4.2.0以后不需要了。
    $charid = strtoupper ( md5 ( uniqid ( rand (), true ) ) ); //根据当前时间(微秒计)生成唯一id.
    $hyphen = chr ( 45 ); // "-"
    $uuid = &#39;&#39; . //chr(123)// "{"
substr ( $charid, 0, 8 ) . $hyphen . substr ( $charid, 8, 4 ) . $hyphen . substr ( $charid, 12, 4 ) . $hyphen . substr ( $charid, 16, 4 ) . $hyphen . substr ( $charid, 20, 12 );
    //.chr(125);// "}"
    return $uuid;
  }
}
Copier après la connexion

Pour plus d'articles sur l'utilisation de la fonction PHP uniqid pour générer un identifiant unique, veuillez faire attention au site Web PHP chinois !

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)