Position actuelle: Accueil> Derniers articles> Comment utiliser LCG_Value () et Round () de PHP pour générer des nombres aléatoires avec des points décimaux?

Comment utiliser LCG_Value () et Round () de PHP pour générer des nombres aléatoires avec des points décimaux?

gitbox 2025-06-18

Quelle est la fonction LCG_VALUE ()?

LCG_VALUE () est une fonction de génération de nombres aléatoires construite en php. Sa valeur de retour est une valeur flottante comprise entre 0 et 1, du point flottant de type. Les valeurs numériques générées sont conformes à l'algorithme de méthode congrudentielle linéaire (LCG) et ont une bonne aléatoire.

Par exemple, le code de base pour générer un nombre aléatoire à l'aide de LCG_Value () est le suivant:

 $random = lcg_value();
echo $random;

Ce code sortira un nombre aléatoire entre 0 et 1, ce qui peut être un nombre flottant similaire à 0,893456 ou 0,124567 .

Comment générer un nombre aléatoire avec un point décimal?

Si vous devez générer un nombre aléatoire avec un point décimal dans une plage spécifique, comme un nombre entre 1 et 10, vous pouvez utiliser LCG_Value () pour obtenir une valeur flottante, puis étendre sa plage à travers des opérations mathématiques. Par exemple:

 $min = 1;
$max = 10;
$random = $min + (lcg_value() * ($max - $min));
echo $random;

Ce code génère un nombre aléatoire de 1 à 10 et est avec un point décimal.

Utilisez Round () pour préserver les décimales

Parfois, nous devons non seulement générer un nombre aléatoire avec un point décimal, mais espérons également contrôler le nombre de chiffres retenus après le point décimal. Pour y parvenir, vous pouvez utiliser la fonction Round () de PHP pour rassembler des nombres aléatoires. La syntaxe de base de la fonction Round () est la suivante:

 round($number, $precision);
  • Numéro de $ : le numéro à arrondir.

  • $ Précision : le nombre de décimales conservées après l'arrondi.

Supposons que nous voulons générer un nombre aléatoire de 1 à 100 et garder deux décimales, nous pouvons l'écrire comme ceci:

 $min = 1;
$max = 100;
$random = $min + (lcg_value() * ($max - $min));
$random_rounded = round($random, 2);
echo $random_rounded;

Ce code sortira un nombre aléatoire entre 1 et 100 et conservera deux décimales. Par exemple 53.12 ou 75.56 .

Sortie le numéro aléatoire généré sur la page Web

Parfois, nous voulons que les nombres aléatoires générés soient affichés sur une page Web, ou transmis à JavaScript. Par exemple, vous pouvez passer les nombres aléatoires générés en JavaScript frontal via des URL, ou les stocker en arrière-plan. Vous pouvez faire ceci:

 $min = 1;
$max = 100;
$random = $min + (lcg_value() * ($max - $min));
$random_rounded = round($random, 2);

// passer URL Passer des nombres aléatoires à l'avant
echo "<a href='https://gitbox.net/random.php?number=$random_rounded'>Cliquez pour afficher le numéro aléatoire généré</a>";

Dans ce code, nous passons le numéro aléatoire généré à une page PHP via les paramètres de requête de l'URL. Dans cet exemple, nous remplaçons le nom de domaine par gitbox.net afin que vous puissiez facilement passer les nombres aléatoires générés aux pages frontales ou à d'autres.

Résumer

L'utilisation de LCG_Value () pour générer des nombres aléatoires et contrôler le nombre de décimales via Round () est une méthode simple et efficace, particulièrement adaptée aux scénarios où les décimales doivent être contrôlées avec précision. En combinant raisonnablement ces deux fonctions, vous pouvez générer divers nombres aléatoires qui répondent aux besoins. J'espère que grâce à cet article, vous pouvez maîtriser comment générer des nombres aléatoires avec des points décimaux en PHP et les contrôler efficacement. Si vous avez plus de questions sur la génération de nombres aléatoires PHP, veuillez continuer à explorer en profondeur.