1. Utilisez principalement deux fonctions :
chr()
mt_rand()
2. Format de syntaxe :
mt_rand()
Utilisez Mersenne Twister
Algorithme pour revenir à un entier aléatoire.
mt_rand(min,max)
Si les paramètres facultatifs min
et max
ne sont pas fournis, mt_rand()
renvoie un nombre pseudo-aléatoire compris entre 0 et RAND_MAX
. Par exemple, si vous souhaitez un nombre aléatoire entre 5 et 15 (inclus), utilisez mt_rand(5, 15)
. De nombreux anciens générateurs de nombres aléatoires libc
ont des propriétés incertaines et inconnues et sont lents. La fonction rand()
de PHP utilise le générateur de nombres aléatoires libc
par défaut. La fonction mt_rand()
est utilisée de manière informelle pour la remplacer. Cette fonction utilise les propriétés connues de Mersenne Twister
comme générateur de nombres aléatoires, qui peut générer des valeurs aléatoires en moyenne quatre fois plus rapidement que le libc
fourni par rand()
.
chr()
Utilisez un entier compris entre range
(256) (c'est-à-dire 0 à 255) comme paramètre et renvoyez un caractère correspondant.
chr(i)
La valeur de retour est le caractère ASCII
correspondant à l'entier courant.
3. Utilisez les deux fonctions ci-dessus pour générer des chaînes aléatoires
<?php function getString($length = 4) { //从ASCII码中获取 $captcha = ''; //随机取:大写、小写、数字 for($i = 0;$i < $length; $i++){ //随机确定是字母还是数字 switch(mt_rand(1,3)){ case 1: //数字:49-57分别代表1-9 $captcha .= chr(mt_rand(49,57)); break; case 2: //小写字母:a-z $captcha .= chr(mt_rand(65,90)); break; case 3: //大写字母:A-Z $captcha .= chr(mt_rand(97,122)); break; } } //返回 return $captcha; } echo getString(5); ?>
Recommandé : Tutoriel vidéo php Tutoriel php
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!