En PHP, nous devons souvent utiliser des nombres aléatoires pour effectuer certaines opérations. Parfois, nous avons besoin que la plage de nombres aléatoires soit la même, mais les nombres aléatoires générés à chaque fois sont différents. Alors, comment générer différents nombres aléatoires ?
Nous pouvons utiliser l'horodatage de l'heure actuelle comme graine pour la génération de nombres aléatoires. L'horodatage est le nombre de secondes entre le 1er janvier 1970 00:00:00 GMT et l'heure actuelle. Par exemple, nous pouvons utiliser le code suivant pour générer des nombres aléatoires :
mt_srand(time()); $random_number = mt_rand(1, 100);
Dans le code ci-dessus, mt_srand(time())
signifie utiliser l'horodatage actuel comme numéro de départ, mt_rand( 1, 100) signifie générer un nombre aléatoire entre 1 et 100. <code>mt_srand(time())
表示使用当前时间戳作为种子数,mt_rand(1, 100)
表示生成一个 1 到 100 之间的随机数。
我们可以使用随机字符串作为随机数种子。例如,我们可以使用如下代码生成随机数:
$seed = str_split('abcdefghijklmnopqrstuvwxyz' .'ABCDEFGHIJKLMNOPQRSTUVWXYZ' .'0123456789'); shuffle($seed); $random_number = ''; foreach (array_rand($seed, 10) as $k) { $random_number .= $seed[$k]; }
上述代码中,我们首先将包含所有可能字符的字符串拆分成字符数组 $seed
,然后调用 shuffle
函数将这个数组重新排列。接着,我们使用 array_rand
函数从数组中随机选取 10 个字符,最终将这些字符拼接起来作为随机数。
PHP 的 uniqid
函数可以生成唯一的 ID,我们也可以使用它来生成随机数。例如,我们可以使用如下代码生成随机数:
$random_number = uniqid(mt_rand(), true);
上述代码中,mt_rand()
函数返回一个随机整数,将其作为 uniqid
函数的前缀,true
参数表示使用微秒级时间戳作为后缀。
总结
使用时间戳、随机字符和 uniqid
$seed
, puis appelons shuffle réorganise ce tableau. Ensuite, nous utilisons la fonction <code>array_rand
pour sélectionner aléatoirement 10 caractères dans le tableau, et enfin concaténer ces caractères ensemble sous forme de nombre aléatoire. 🎜uniqid
de PHP peut générer un identifiant unique, et nous pouvons également l'utiliser pour générer des nombres aléatoires. Par exemple, nous pouvons utiliser le code suivant pour générer des nombres aléatoires : 🎜rrreee🎜Dans le code ci-dessus, la fonction mt_rand()
renvoie un entier aléatoire, qui est utilisé comme préfixe du Fonction uniqid
, trueuniqid
peut tous générer différents nombres aléatoires. En utilisation réelle, vous devez choisir une méthode qui vous convient en fonction de la situation spécifique. Il convient de noter que les nombres aléatoires ne sont pas des nombres véritablement aléatoires, mais des nombres pseudo-aléatoires qui reposent sur un générateur de nombres aléatoires. Par conséquent, lorsque des nombres aléatoires véritablement sécurisés sont requis, des bibliothèques cryptographiques spécialisées sont nécessaires. 🎜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!