Générateur d'identifiant unique (lettres & chiffres)

Soyez le premier à donner votre avis sur cette source.

Snippet vu 24 503 fois - Téléchargée 24 fois

Contenu du snippet

Ce code sert à renvoyer une id unique qui peux être utilisé par exemple pour les systèmes d'uploads.
Si un fichier est uploader avec le même nom qu'un fichier déjà présent sur le serveur, cella remplace le fichier.
Donc pour éviter ce problème, on rajoute une id au nom du fichier, comme ca, on évite ce problème !

Source / Exemple :


if(!function_exists('uniqid'))
{
 function uniqid()
 {
 # Cette fonction renvoie un identifiant unique
    $micro = substr (microtime(), 2, 6) ;
    $concat = time() . $micro ;
    $dec_1 = substr ($concat, 0, 8) ;
    $dec_2 = substr ($concat, 8, 8) ;
    $hex_1 = dechex ($dec_1) ;
    $hex_2 = dechex ($dec_2) ;
    $id = $hex_1  . $hex_2 ;
    return $id ;
}

Conclusion :


Aucun bug signaler jusqu'a présent.

A voir également

Ajouter un commentaire

Commentaires

Gallient
Messages postés
16
Date d'inscription
vendredi 29 avril 2005
Statut
Membre
Dernière intervention
7 novembre 2007
-
Merci Malalam
coucou747
Messages postés
12336
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
26 -
Gallient, je mettais juste en avant ta prétention... et entre nous, je préfère ma solution ou celle de malalam, et t'as pas dit pourquoi elles étaient moins bonnes...
malalam
Messages postés
10844
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
17 -
Hello,

ouais bon, on arrête les chamailleries en effet.
On se fiche de l'âge, on est là pour commenter un code.
Et de ce point de vue là, je ne vois en effet pas son intérêt.
MAIS...je le laisse, parce qu'il a le mérite de montrer des fonctions certes simples, mais que l'on voit peu.
Donc, pourquoi pas.
Je rappelle néanmoins à Gallient qu'en programmation, rien ne sert de réinventer la roue : on fait alors généralement moins bien, moins optimisé, moins rapide que les créateur du langage utilisé.
Voir uniqid()
http://fr2.php.net/manual/fr/function.uniqid.php
Gallient
Messages postés
16
Date d'inscription
vendredi 29 avril 2005
Statut
Membre
Dernière intervention
7 novembre 2007
-
Et coucou747, je déteste tout les gens qui ont des idées toutes faites sur le personne quand ils savent leur âge. Tu fais parti de ces personnes.
TheSin
Messages postés
331
Date d'inscription
mardi 12 novembre 2002
Statut
Membre
Dernière intervention
10 février 2009
-
bin moi j'aimerais quand meme que la source ne soit pas en initié non plus car je pense pas que ça le soit ....
encore, utiliser un array_multisort() est déjà plus initié que dechex(), time(), microtime(), et substr()

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.