Maison >développement back-end >Problème PHP >Comment générer 100 nombres aléatoires différents en php

Comment générer 100 nombres aléatoires différents en php

青灯夜游
青灯夜游original
2021-09-30 16:01:213851parcourir

Méthode : 1. Définissez un tableau vide pour placer des nombres aléatoires ; 2. Utilisez "while (longueur du tableau <100)" pour contrôler le nombre de boucles afin de vous assurer qu'il y a 100 nombres dans le tableau à la fin ; Utilisez mt_rand dans le corps de la boucle () Générez aléatoirement des nombres dans le tableau et utilisez array_flip() pour supprimer les doublons afin de garantir que les nombres aléatoires sont uniques.

Comment générer 100 nombres aléatoires différents en php

L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 7.1, ordinateur DELL G3

php génère 100 nombres aléatoires différents

<?php
/*
* array unique_rand( int $min, int $max, int $num )
* 生成一定数量的不重复随机数
* $min 和 $max: 指定随机数的范围
* $num: 指定生成数量
*/
function unique_rand($min, $max, $num) {
  $count = 0;
  $return = array();
  while ($count < $num) {
      $return[] = mt_rand($min, $max);
      $return = array_flip(array_flip($return));
      $count = count($return);
  }
  shuffle($return);
  return $return;
}
$arr = unique_rand(1, 1000, 100);
sort($arr);
$result = &#39;&#39;;
for($i=0; $i < count($arr);$i++)
{
  $result .= $arr[$i].&#39;,&#39;;
}
$result = substr($result, 0, -1);
echo $result;
?>

Résultats de sortie :

5,14,36,59,61,65,70,72,95,103,105,114,124,138,142,143,153,159,170,174,175,184,186,189,207,210,214,220,254,256,257,259,268,273,280,281,290,293,295,303,309,315,316,321,327,359,364,370,416,420,429,433,434,436,438,449,464,493,505,558,563,568,570,593,599,637,639,646,656,659,670,687,695,709,713,719,722,731,733,736,749,750,784,803,807,812,835,849,859,893,899,914,937,941,948,951,960,969,991,992

Instructions :

mt_rand() renvoie un entier aléatoire en utilisant l'algorithme Mersenne Twister. Syntaxe :

mt_rand(min,max)
mt_rand() 使用 Mersenne Twister 算法返回随机整数。语法:

rrreee

返回 min 和 max之间的一个随机整数。

array_flip() 函数用于反转/交换数组中的键名和对应关联的键值。利用array_flip()函数我们可以去除数组中重复的元素。

只需要先使用array_flip()将键名和键值互换来移除重复值;然后再使用array_flip()重新将键名和键值调换回来即可

count() Renvoie un entier aléatoire compris entre min et max.

array_flip() La fonction est utilisée pour inverser/échanger les noms de clés dans le tableau et les valeurs de clés associées correspondantes. En utilisant la fonction array_flip(), nous pouvons supprimer les éléments en double du tableau. Utilisez simplement array_flip() pour échanger les noms de clés et les valeurs de clé afin de supprimer les valeurs en double ; puis utilisez array_flip() pour échanger à nouveau les noms de clé et les valeurs de clé

🎜count() La fonction renvoie le nombre d'éléments dans le tableau, qui correspond à la longueur du tableau. 🎜🎜Apprentissage recommandé : "🎜Tutoriel vidéo 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!

Déclaration:
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