Comment générer une chaîne aléatoire en utilisant PHP

藏色散人
Libérer: 2023-04-04 22:00:02
original
13649 Les gens l'ont consulté

Générez des chaînes alphanumériques aléatoires et uniques à l'aide de PHP.

Comment générer une chaîne aléatoire en utilisant PHP

Exemple :

EA070
aBX32gTf
Copier après la connexion

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 = &#39;0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ&#39;; 
    $randomString = &#39;&#39;; 
  
    for ($i = 0; $i < $n; $i++) { 
        $index = rand(0, strlen($characters) - 1); 
        $randomString .= $characters[$index]; 
    } 
  
    return $randomString; 
} 
  
echo getName($n); 
?>
Copier après la connexion

Sortie 1 :

3HDrSOvRIs
Copier après la connexion

Sortie 2 :

lipHh
Copier après la connexion

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; 
?>
Copier après la connexion

Sortie 1 :

2e437510c181dd2ae100fc1661a445d4
Copier après la connexion

Sortie 2 :

256394010059991a71ea05e5d859d2be
Copier après la connexion

Programme 2 :

<?php 
$str=rand(); 
$result = sha1($str); 
echo $result; 
?>
Copier après la connexion

Sortie 1 :

6eadd9b2c4389d9b109b3b869f66aab5d8f9420a
Copier après la connexion

Sortie 2 :

ca2d3c0993ab87e842d0a7a01f319aca6c587a87
Copier après la connexion

Programme 3 :

<?php 
$str = rand(); 
$result = hash("sha256", $str); 
echo $result; 
?>
Copier après la connexion

Sortie 1 :

2a41cbc8cc11f8c8d0eb54210fe524748b4def1c5b04fcf18c2d5972e24d11c2
Copier après la connexion

Sortie 2 :

291144c1cbba4de0bf199d37ee265ac95cc2e44e80fd2642b22a6e8ef2f42a39
Copier après la connexion

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; 
?>
Copier après la connexion

Sortie 1 :

5bdd0b74e9a6c
Copier après la connexion

Sortie 2 :

5bdd0bbc200c4
Copier après la connexion

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; 
?>
Copier après la connexion

Sortie 1 :

235aed08a01468f90fa726bd56319fb893967da8
Copier après la connexion

Sortie 2 :

508b84494cdf31bec01566d12a924c75d4baed39
Copier après la connexion

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!

Étiquettes associées:
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