Heim >Backend-Entwicklung >PHP-Problem >Gibt eine bestimmte Anzahl zufälliger Zeichen über PHP zurück
Im vorherigen Artikel haben wir drei Methoden zum schnellen Abrufen des Betriebssystemtyps vorgestellt. Wenn Sie interessiert sind, können Sie auf den Link klicken, um zu lesen → „So erhalten Sie den Betriebssystemtyp schnell über PHP (3 Methoden)“ . Lassen Sie uns dieses Mal über zufällige Zeichenfolgen sprechen und sehen, wie Sie PHP zum Generieren und Randomisieren von Zeichenfolgen verwenden können. Wenn Sie interessiert sind, können Sie mehr darüber erfahren ~
Das Thema des heutigen Artikels lautet: Verwenden von PHP zum Generieren einer bestimmten Anzahl zufälliger Zeichen , das heißt, generieren Sie eine zufällige Zeichenfolge mit der angegebenen Länge.
Beginnen wir mit dem Haupttext und teilen Ihnen anhand von Codebeispielen zwei Methoden mit.
Methode 1: Verwenden Sie die Funktion rand()
<?php function getRandChar($length) { $str = null; $strPol = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz"; $max = strlen($strPol) - 1; for ($i = 0; $i < $length; $i++) { $str .= $strPol[rand(0, $max)]; //rand($min,$max)生成介于min和max两个数之间的一个随机整数 } return $str; } echo getRandChar(20); ?>
, um den Code zu analysieren.
definiert eine Zeichenfolgenvariable $strPol, die alle erforderlichen Zeichen enthält.
Die Funktion der for-Schleife ist um zufällige Zeichen zu steuern. Die Länge der Zeichenfolge.
Verwenden Sie in jeder Schleife rand(0, $max)
, um zufällig eine Zahl zu generieren (der Zahlenbereich ist 0). code>~<code> Die Länge der Zeichenfolge $strPol - 1
); rand(0, $max)
随机生成一个数字(数字的范围在0
~字符串$strPol的长度-1
);
将随机数字作为下标,取出字符串$strPol中的指定字符,并使用.=
拼接在一起,生成字符串
在上面的代码中,调用getRandChar(20)
设置随机字符串的长度为20,因此输出结果为:
不断刷新,会发现每次输出的不同
下面给大家介绍一下rand()函数。
rand(min,max)
会返回 min
与 max
之间(包括边界值)的随机整数;如果省略这两个参数,则返回 0 到 RAND_MAX 之间的伪随机整数。
方法2:substr()+str_shuffle() + mt_rand()函数
<?php function getRandChar($length) { $strPol = "QWERTYUIOPASDFGHJKLZXCVBNM1234567890qwertyuiopasdfghjklzxcvbnm"; $max = strlen($strPol) - $length-1; $str = substr(str_shuffle($strPol), mt_rand(0, $max), $length); return $str; } echo getRandChar(30); ?>
分析代码:
定义了一个字符串变量$strPol
,里面包含全部需要的字符;
利用str_shuffle($strPol)
打乱字符串,利用mt_rand(0, $max)
随机生成一个数字(数字的范围在0
~字符串$strPol的长度-$length-1
);
使用substr()
函数以随机数字为开始位置来截取已打乱的字符串,返回$length
长度的子串,这个子串就是要返回的随机字符串。
在上面的代码中,调用getRandChar(15)
.=
um sie zusammenzufügen, generieren Sie eine Zeichenfolge
Rufen Sie im obigen Code getRandChar(20)
auf, um die Länge der zufälligen Zeichenfolge auf 20 festzulegen Ausgabeergebnis ist:
Kontinuierlich aktualisieren, Sie werden das jedes Mal feststellen. Der Unterschied in der Ausgabe
Lassen Sie mich Ihnen die Funktion rand() vorstellen.
🎜rand(min,max)
gibt eine zufällige Ganzzahl zwischen min
und max
zurück (einschließlich Grenzwerte); , gibt eine pseudozufällige Ganzzahl zwischen 0 und RAND_MAX zurück. 🎜🎜🎜Methode 2: substr()+str_shuffle() + mt_rand()-Funktion 🎜🎜rrreee🎜Analysecode: 🎜🎜🎜🎜 definiert eine String-Variable $strPol
, die alle erforderlichen Zeichen enthält; 🎜🎜🎜🎜Verwenden Sie str_shuffle($strPol)
, um die Zeichenfolge zu verschlüsseln, und verwenden Sie mt_rand(0, $max)
, um zufällig eine Zahl zu generieren (der Zahlenbereich liegt in 0
~Die Länge der Zeichenfolge $strPol-$length-1
); 🎜🎜🎜🎜Verwenden Sie zunächst die Funktion substr()
eine Zufallszahl. Fangen Sie die verschlüsselte Zeichenfolge ab und geben Sie eine Teilzeichenfolge mit der Länge $length
zurück. Diese Teilzeichenfolge ist die zurückzugebende Zufallszeichenfolge. 🎜🎜🎜Im obigen Code rufen Sie getRandChar(15)
auf, um die Länge der Zufallszeichenfolge auf 15 festzulegen. Das Ausgabeergebnis lautet also: 🎜🎜🎜🎜🎜Kontinuierliche Aktualisierung, Sie Das wird jeder feststellen. Der Unterschied in der Ausgabe 🎜🎜🎜🎜🎜Das ist alles. Wenn Sie noch etwas wissen möchten, können Sie hier klicken. → →🎜php-Video-Tutorial🎜🎜🎜 Abschließend empfehle ich die Lektüre eines klassischen Kurses „🎜PHP String Processing (Jade Girl Heart Sutra Edition)🎜“, er ist kostenlos~ Kommen Sie und lernen Sie! 🎜Das obige ist der detaillierte Inhalt vonGibt eine bestimmte Anzahl zufälliger Zeichen über PHP zurück. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!