Générer une chaine de caractère unique et aléatoire

    04 Nov 2004  

      Générer une chaine de caractère unique et aléatoire

Générer une chaine de caractère unique et aléatoire.
Administrateur 04 Nov 2004
# Catégorie Compatibilité Nombre de vues Site Archive
   Chaine PHP 4, PHP 5, PHP 7 83 118  

       Code Source PHP


 
 01    
 02    
 03    
 04    
 05    
 06    
 07    
 08    
 09    
 10    
 11    
 12    
 13    
 14    
 15    
 16    
 17    
 18    
 19    
 20    
 21    
 22    
 23    
 24    
 25    
 26    
 27    
 28    
                               
<?php
/**************************************************************************************/
/*
     Titre  : Générer une chaine de caractère unique et aléatoire                                                     
                                                                                                                          
     URL    :  
     https://phpsources.net/code/php/chaine/87_generer-une-chaine-de-caractere-unique-et-aleatoire
     Auteur         : Administrateur                                                                                      
     Date edition   : 04 Nov 2004                                                                                         
*/
/**************************************************************************************/
//Générer une chaine de caractère unique et aléatoire
function random($car) {
$string "";
$chaine "abcdefghijklmnpqrstuvwxy";
srand((double)microtime()*1000000);
for($i=0$i<$car$i++) {
$string .= $chaine[rand()%strlen($chaine)];
}
return $string;
}
// APPEL
// Génère une chaine de longueur 20
$chaine random(20);
?>

...  Manuel PHP - Fonctions du code source

   php.net  Description Versions PHP OUTIL
   microtime Retourne le timestamp UNIX actuel avec les microsecondes PHP 4, PHP 5, PHP 7
   rand Génère une valeur aléatoire PHP 4, PHP 5, PHP 7
   srand Initialise le générateur de nombres aléatoires PHP 4, PHP 5, PHP 7
   strlen Calcule la taille d'une chaîne PHP 4, PHP 5, PHP 7


  • L'ajout de commentaire est libre et ne demande pas d'inscription,
  •   invité

nous vous encourageons à contribuer à l'utilisation de PHP en ajoutant vos remarques.

[13]

  • ...

    ParMesSoins

    20 Fév 2008 à 09:02

    Parfait !!!
    perso je l'ai un peu adapté pour avoir des chiffres en plus :
    $chaine = "abcdefghijklmnopqrstuvwxyz0123456789";

  • ...

    Invité

    23 Oct 2008 à 09:17

    Comment puis je insérer ce script dans un formulaire afin qu'il me génère un mot de passe dans un champ invisible appelé "mdp" qui sera inséré dans une base mysql avec d'autres champs ?

  • ...

    Invité

    05 Aout 2009 à 11:12

    Réponse à invité. Evites les champs hidden car il peuvent être capté par un adminitrateur reseau ou peuvent être récupéré en consultant le source de la page html générée. Il vaut mieux le stocker dans un session c'est plus sûr.

  • ...

    Invité

    24 Avril 2010 à 11:06

    Merci :D C'est tout ce que je cherchais ;) t'es un boss Perso, je prefere lorsqu'il y a de lettres minuscules et majuscules et des nombres :D

  • ...

    Invité

    23 Mai 2010 à 15:10

    Waw je prends!

  • ...

    Invité

    30 Sept 2010 à 23:04

    roooh niquel !! grand merci

  • ...

    Invité

    13 Avril 2011 à 19:15

     merc beaucoup ça m'aide 

  • ...

    Invité

    18 Avril 2011 à 14:21

     Nice One ! on peut aussi l'améliorer en ajoutant des majiscules et des chiffres.

  • ...

    Invité

    24 Jan 2012 à 02:30

     Comment puis-je (ou plutot ou dois-je) inserer ce code dans un <input='text'> svp??

  • ...

    Invité

    28 Avril 2012 à 20:05

    a  Le 24 Jan 2012 à 02:30:00 :
    Je sais il a du deja regler son probleme mais bon la solution est simple <input type='text' value='<?php echo $chaine; ?>'>

  • ...

    Lechiffre

    21 Juil 2012 à 16:11

    Pas forcement unique faute du  *1000000
    function random($universal_key) {

    $string = "";

    $user_ramdom_key = "(aLABbC0cEd1[eDf2FghR3ij4kYXQl5Um-OPn6pVq7rJs8*tuW9I+vGw@xHTy&#)K]Z%§!M_S";
    srand((double)microtime()*time());
    for($i=0; $i<$universal_key; $i++) {
    $string .= $user_ramdom_key[rand()%strlen($user_ramdom_key)];
    }
    return $string;
    }
       Comme ceci 1 chance sur plusieurs dixaine de milliards qu'un double  ce reproduise

  • ...

    Invité

    11 Fév 2014 à 16:56

    En 10 fois plus court 
    Pour générer une chaine de 10 caractères aléatoires de "a" à "z" : $chn = '';
    for ($i=1;$i<=10;$i++)
        $chn =. chr(floor(rand(0, 25)+97));

  • ...

    Invité

    21 Oct 2014 à 10:07

    Bonjour tous le monde je travail sur un projet. Ce projet concerne des offres d'emplois mais compte tenu du nombre important des postulants on aimerais d'abord faire une preselection.Le postulent se connecte s'inscrit et à la fin procede a un tirage qui consiste a cliqué sur un bouton puis on l'affiche "OUI" ou "NON" cela doit se faire aléatoirement. C'est la partie tirage qui me bloque.si quequ'un a idée ça sera la bien venu.Merci

  Chaines [ 81 ]

Affichage des codes ASCII d'une chaine afficher la taille d'un fichier en Ko, Mo, Go, To, Po, Eo, Zo, Yo Ajouter des retours à  la ligne à  vos textes Arrondi une distance en mètre ou en kilomètre Avoir 10000 et afficher 10 000 à  l'écran Avoir des liens et les emails cliquables dans un texte Avoir les initiales d'un nom et d'un prénom Baliser des mots dans une chaine Bannir les mots d'un texte C'est de l'UTF8 ou de l'ISO ? Cherche et trouve les mots trop long d'un texte Chercher des adresses emails dans un texte Colorisation de code php valide xhtml Comparer l'égalité entre 2 chaines Compter le nombre de caractères d'une chaà®ne. Compter le nombre de caractères que compte une chaà®ne Compter le nombre de mots ayant un certain caractère Compter le nombre de mots dans un string Contre les messages d'insulte Controle l'équilibre majuscules / minuscules et le pourcentage de majuscules Conversion ASCII en ANSI Conversion d'une chaine en minuscules/majuscules Conversion d'URL relative en URL absolue Convertir un string en chaine de mots clés Convertit les majuscules et minuscules d'un texte au bon format. Coupe une chaine par séquences Coupe une phrase en mots Couper scinder un texte ligne par ligne Couper une chaine au n caractere et... Crypter et décrypter une chaine avec la fonction mcrypt_ecb Découpe de chaine par mots maximum Détermine l'existence d'1 variable Enleve les espaces dans une chaine Enleve les n derniers caractere d'une chaine Exécute une chaine comme un script PHP Exploser une chaine en mots clés Extraire tous les mots d'une phrase Formate une liste en séparant les éléments par une "," et un "et" pour le dernier Générateur de mot de passe avec lettres + majuscules+ minuscules + nombres Générateur de tableau de code ASCII Générateur de tableau de codes Unicode Génération de mot de passe prononà§able facile à  retenir   Générer une chaine de caractère unique et aléatoire Inclure des smileys dans vos textes La gestion des problèmes d'espace dans une chaine en PHP Mettre la première lettre d'une chaine en majuscule, en couleur et + si affinité Mot de passe aléatoire Mot de passe mnémotechnique Optimiser un chaine pour la réécriture d'URL Passer 1 texte en MAJUSCULES Passer la première lettre d'une chaine en majuscule Passer les caractères spéciaux dans une URL Passer toutes vos lettres en MAJUSCULE Passer une chaine dans un format de tableau Récupérer les liens ligne par ligne d'un textarea Remplace seulement la premiere occurence d'une chaine Remplace tous les accents par leur équivalent sans accent. Remplace une chaine ou un tableau dans une chaine Remplacer tout les caractères spéciaux par leur caractère correspondant string_split Suite de chiffres Supprime des tags dans une chaine Supprime les accents dans une chaine de caractère Supprime les caractères Supprime les lignes vident d'une chaine Supprime les sauts de lignes au début et à  la fin d'un texte Supprimer l'extension d'un fichier Tag BBcode pour afficher des Codes sources en php Tronquer une chaine de caractère trop longue. Tronquer une chaine de caractères Tronquer une chaine de caractères HTML Trouver un caractère dans une chaine Vérifie le code postal canadien Vérifie les caractères invalides Vérifie si une chaine est alphanumérique Vérifie si votre chaine ne contient aucun caractere alphanumérique Vérifie si votre chaine ne contient aucun caractere numerique Vérifier qu'une chaine de caractère ne contient que des caractères alphabétique (ou alphanumérique) Vérifier si un mot de passe est valide Vérifier si une chaine de caractères contient un nombre hexadécimal [PHP] Formater une chaine pour une URL