Fonction PHP : unique_id()

Ici, vous pouvez voir (et copier/coller) le code complet de la fonction PHP unique_id(). N'hésitez pas voter pour cette fonction si elle vous plaît ou si vous vouv en servez !

unique_id() ajouté le 2010-01-21 10:14:20 par iMystiK

/**
 * Permet de générer un identifiant unique à la Youtube
 * @param		numeric		nombre de caractères de l'identifiant de retour
 * @return		string		chaine unique contenant X caractères
 */
function id_unique($nb_char){
	srand( (double)microtime()*rand(1000000,9999999) ); // Genere un nombre aléatoire
	$arrChar = array(); // Nouveau tableau contenant tous les caractères A-Za-z0-9
	for( $i=65; $i<90; $i++ ) {
	    array_push( $arrChar, chr($i) ); // Ajoute A-Z au tableau
	    array_push( $arrChar, strtolower( chr( $i ) ) ); // Ajouter a-z au tableau
	}
	for( $i=48; $i<57; $i++ ) {
	    array_push( $arrChar, chr( $i ) ); // Ajoute 0-9 au tableau
	}
	for( $i=0; $i< $nb_char; $i++ ) {
	    $id_unique .= $arrChar[rand( 0, count( $arrChar ) )]; // Ecrit un aléatoire
	}
	return $id_unique;
}

Voter pour cette fonction


La fonction permet de retourner un identifiant unique de $nb_char caractères du type Ab45KihLM26Ze

Commentaires sur la fonctions php

Jerome 21/01/2010 à 16:33

Rien n'empêche le script de générer 2 fois le même id, si ?

Aroybase 11/02/2010 à 21:30

J'en ai une un peu plus simple.
Bon ok tu ne peux pas avoir deux fois la même lettre dans ton code mais bon...est-ce grave ? :)

function code($p_nbChar){ 
		return substr(str_shuffle('abcdefghijklmnopqrstuvwxyzABCEFGHIJKLMNOPQRSTUVWXYZ0123456789'),1, $p_nbChar);
	}

Agence web wixiweb Rouen 06/03/2010 à 23:59

Une fonction similaire est déjà native.

uniqid();

Seebz 28/04/2010 à 20:14

@wixiweb: J'allais le dire...