So generieren Sie eine zufällige Zeichenfolge mit PHP

藏色散人
Freigeben: 2023-04-04 22:00:02
Original
13658 Leute haben es durchsucht

Generieren Sie mit PHP zufällige, eindeutige alphanumerische Zeichenfolgen.

So generieren Sie eine zufällige Zeichenfolge mit PHP

Beispiel:

EA070
aBX32gTf
Nach dem Login kopieren

Methode 1:

Die erste Methode ist am einfachsten zu verstehen. Es kann wie folgt implementiert werden:

– speichert alle möglichen Buchstaben in einem String.

– Erzeugt einen zufälligen Index von 0 bis Stringlänge – 1.

– Druckt den Buchstaben an diesem Index.

– Führen Sie diesen Schritt n-mal aus (wobei n die Länge der gewünschten Zeichenfolge ist).

Der Programmcode lautet wie folgt:

<?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); 
?>
Nach dem Login kopieren

Ausgabe 1:

3HDrSOvRIs
Nach dem Login kopieren

Ausgabe 2:

lipHh
Nach dem Login kopieren

Methode 2: Hash-Funktion verwenden

PHP verfügt über einige Funktionen wie md5(), sha1() und hash(), die zum Hashen von Zeichenfolgen nach bestimmten Algorithmen wie „sha1“, „sha256“, „md5“ usw. verwendet werden können. Ich hoffe, damit klarzukommen. Alle diese Funktionen verwenden einen String als Argument und geben einen alphanumerischen Hash-String aus.

Verwenden Sie die Funktion rand(), um Zufallszahlen zu generieren.

Hashen Sie es mit einer der oben genannten Funktionen.

Programm 1:

<?php 
$str=rand(); 
$result = md5($str); 
echo $result; 
?>
Nach dem Login kopieren

Ausgabe 1:

2e437510c181dd2ae100fc1661a445d4
Nach dem Login kopieren

Ausgabe 2:

256394010059991a71ea05e5d859d2be
Nach dem Login kopieren

Programm 2:

<?php 
$str=rand(); 
$result = sha1($str); 
echo $result; 
?>
Nach dem Login kopieren

Ausgabe 1:

6eadd9b2c4389d9b109b3b869f66aab5d8f9420a
Nach dem Login kopieren

Ausgabe 2:

ca2d3c0993ab87e842d0a7a01f319aca6c587a87
Nach dem Login kopieren

Programm 3:

<?php 
$str = rand(); 
$result = hash("sha256", $str); 
echo $result; 
?>
Nach dem Login kopieren

Ausgabe 1:

2a41cbc8cc11f8c8d0eb54210fe524748b4def1c5b04fcf18c2d5972e24d11c2
Nach dem Login kopieren

Ausgabe 2:

291144c1cbba4de0bf199d37ee265ac95cc2e44e80fd2642b22a6e8ef2f42a39
Nach dem Login kopieren

Hinweis: oben Alle Funktionen sind Hash-Funktionen, sodass die resultierende Stringlänge immer vom verwendeten Algorithmus abhängt, für den Algorithmus jedoch immer gleich bleibt. Wenn Sie also eine Zeichenfolge mit fester Länge generieren möchten, können Sie die generierte Zeichenfolge abschneiden oder bei Bedarf mit einer anderen Zeichenfolge verketten.

Methode 3:

Verwenden Sie die Funktion uniqid(). Die Funktion uniqid() in PHP ist eine integrierte Funktion, mit der eine eindeutige ID basierend auf der aktuellen Zeit (Mikrosekunden) generiert wird. Standardmäßig wird eine eindeutige Zeichenfolge mit einer Länge von 13 Zeichen zurückgegeben.

Programm:

<?php  
$result = uniqid();   
echo $result; 
?>
Nach dem Login kopieren

Ausgabe 1:

5bdd0b74e9a6c
Nach dem Login kopieren

Ausgabe 2:

5bdd0bbc200c4
Nach dem Login kopieren

Hinweis: Alle oben genannten Methoden basieren auf rand()- und uniqid()-Funktionen. Bei diesen Funktionen handelt es sich nicht um kryptografisch sichere Zufallsgeneratoren. Daher wird empfohlen, diese Methoden zu vermeiden, wenn der Grad der Zufälligkeit die Sicherheit der Anwendung beeinträchtigt.

Methode 4:

Verwenden Sie die Funktion random_bytes(). (Kryptografisch sicher) Die Funktion random_bytes() generiert kryptografisch sichere pseudozufällige Bytes, die später mit der Funktion bin2hex() in das Hexadezimalformat konvertiert werden können.

Programm:

<?php  
$n = 20; 
$result = bin2hex(random_bytes($n)); 
echo $result; 
?>
Nach dem Login kopieren

Ausgabe 1:

235aed08a01468f90fa726bd56319fb893967da8
Nach dem Login kopieren

Ausgabe 2:

508b84494cdf31bec01566d12a924c75d4baed39
Nach dem Login kopieren

Ich hoffe, dieser Artikel handelt von der Methode zum Generieren von Zufallszeichenfolgen in PHP Helfen Sie den Bedürftigen!

Das obige ist der detaillierte Inhalt vonSo generieren Sie eine zufällige Zeichenfolge mit PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage