php génère des identifiants uniques

(*-*)浩
Libérer: 2023-02-25 08:32:01
original
2577 Les gens l'ont consulté

Pour générer des identifiants uniques et non dupliqués, nous utilisons principalement l'heure actuelle, puis la convertissons en valeur md5. Cela peut presque garantir l'unicité de l'étiquette. Vous trouverez ci-dessous un résumé de certains codes de programme pour générer des identifiants non dupliqués. identifiants en PHP

php génère des identifiants uniques

fonction intégrée php uniqid()

la fonction uniqid() est basée à l'heure actuelle en microsecondes, Générez un identifiant unique (Apprentissage recommandé : Programmation PHP de l'entrée à la maîtrise )

Le manuel de référence de w3school contient une phrase : " Parce qu'il est basé sur l'heure du système, l'ID généré par la fonction n'est pas optimal. Pour générer un ID absolument unique, utilisez la fonction md5().

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

function uuid() {
    if (function_exists ( 'com_create_guid' )) {
        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 = '' . //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

Méthode php pour générer un identifiant globalement unique (GUID)

GUID est unique dans l'espace et dans le temps, garantissant que les différents nombres générés à différents endroits en même temps sont différents.

Aucun ordinateur au monde ne générera de valeurs GUID en double.

Lorsqu'un GUID est requis, il peut être généré de manière entièrement automatique par l'algorithme et ne nécessite pas une organisation faisant autorité pour le gérer.

GUID a une longueur fixe et est relativement court, ce qui est très approprié pour le tri, l'identification et le stockage.

<?php
//php生成GUID
function getGuid() {
 $charid = strtoupper(md5(uniqid(mt_rand(), true)));
 
 $hyphen = chr(45);// "-"
 $uuid = substr($charid, 0, 8).$hyphen
 .substr($charid, 8, 4).$hyphen
 .substr($charid,12, 4).$hyphen
 .substr($charid,16, 4).$hyphen
 .substr($charid,20,12);
 return $uuid;
}
?>
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
php
source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal