Générez des chaînes alphanumériques aléatoires et uniques à l'aide de PHP.
Exemple :
EA070 aBX32gTf
Méthode 1 :
La première méthode est la méthode la plus simple à comprendre . Il peut être implémenté comme suit :
- stocke toutes les lettres possibles dans une chaîne.
- Génère un index aléatoire de 0 à la longueur de chaîne - 1.
- Imprime la lettre à cet index.
- Effectuez cette étape n fois (où n est la longueur de la chaîne souhaitée).
Le code du programme est le suivant :
<?php $n=10; function getName($n) { $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; $randomString = ''; for ($i = 0; $i < $n; $i++) { $index = rand(0, strlen($characters) - 1); $randomString .= $characters[$index]; } return $randomString; } echo getName($n); ?>
Sortie 1 :
3HDrSOvRIs
Sortie 2 :
lipHh
Méthode 2 : Utiliser les fonctions de hachage
PHP a quelques fonctions comme md5(), sha1() et hash() qui peuvent être utilisées selon certains algorithmes comme "sha1", "sha256", "md5" etc. ) pour hacher une chaîne. Toutes ces fonctions prennent une chaîne comme argument et génèrent une chaîne de hachage alphanumérique.
Utilisez la fonction rand() pour générer des nombres aléatoires.
Hashez-le en utilisant l'une des fonctions ci-dessus.
Programme 1 :
<?php $str=rand(); $result = md5($str); echo $result; ?>
Sortie 1 :
2e437510c181dd2ae100fc1661a445d4
Sortie 2 :
256394010059991a71ea05e5d859d2be
Programme 2 :
<?php $str=rand(); $result = sha1($str); echo $result; ?>
Sortie 1 :
6eadd9b2c4389d9b109b3b869f66aab5d8f9420a
Sortie 2 :
ca2d3c0993ab87e842d0a7a01f319aca6c587a87
Programme 3 :
<?php $str = rand(); $result = hash("sha256", $str); echo $result; ?>
Sortie 1 :
2a41cbc8cc11f8c8d0eb54210fe524748b4def1c5b04fcf18c2d5972e24d11c2
Sortie 2 :
291144c1cbba4de0bf199d37ee265ac95cc2e44e80fd2642b22a6e8ef2f42a39
Remarque : Toutes les fonctions ci-dessus sont des fonctions de hachage, donc la longueur de la chaîne générée dépendra toujours de l'algorithme utilisé, mais pour l'algorithme elle restera toujours la même Changement. Ainsi, si vous souhaitez générer une chaîne de longueur fixe, vous pouvez tronquer la chaîne générée ou la concaténer avec une autre chaîne si nécessaire.
Méthode 3 :
Utilisez la fonction uniqid(). La fonction uniqid() en PHP est une fonction intégrée utilisée pour générer un identifiant unique basé sur l'heure actuelle (microsecondes). Par défaut, il renvoie une chaîne unique de 13 caractères.
Programme :
<?php $result = uniqid(); echo $result; ?>
Sortie 1 :
5bdd0b74e9a6c
Sortie 2 :
5bdd0bbc200c4
Remarque : ci-dessus Toutes les méthodes sont construites sur les fonctions rand() et uniqid(). Ces fonctions ne sont pas des générateurs aléatoires cryptographiquement sécurisés. Par conséquent, il est recommandé d’éviter ces méthodes si le degré de caractère aléatoire affecte la sécurité de l’application.
Méthode 4 :
Utilisez la fonction random_bytes(). (Cryptographiquement sécurisé) La fonction random_bytes() génère des octets pseudo-aléatoires cryptographiquement sécurisés, qui peuvent ensuite être convertis au format hexadécimal à l'aide de la fonction bin2hex().
Programme :
<?php $n = 20; $result = bin2hex(random_bytes($n)); echo $result; ?>
Sortie 1 :
235aed08a01468f90fa726bd56319fb893967da8
Sortie 2 :
508b84494cdf31bec01566d12a924c75d4baed39
Cet article concerne PHP générant des caractères aléatoires ici est une introduction à la méthode des brochettes, j'espère qu'elle sera utile aux amis qui en ont besoin !
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!