La nécessité de générer des nombres aléatoires uniques dans une plage spécifiée se pose dans divers scénarios de programmation. Bien que le code donné tente de résoudre ce problème, il n’est pas efficace en termes d’efficacité. Examinons une approche plus optimisée et plus robuste.
La clé réside dans la création d'un tableau avec une plage de nombres et dans l'utilisation de la fonction shuffle() intégrée en PHP pour randomiser leur ordre. Voici le code amélioré :
$numbers = range(1, 20); shuffle($numbers);
Avec cette approche, nous générons efficacement un tableau de nombres aléatoires uniques dans la plage souhaitée.
Vous pouvez également encapsuler la logique dans une fonction réutilisable :
function UniqueRandomNumbersWithinRange($min, $max, $quantity) { $numbers = range($min, $max); shuffle($numbers); return array_slice($numbers, 0, $quantity); }
Exemple :
print_r( UniqueRandomNumbersWithinRange(0, 25, 5) );
Attendu Résultat :
Array ( [0] => 14 [1] => 16 [2] => 17 [3] => 20 [4] => 1 )
Cette approche garantit des nombres aléatoires uniques dans la plage spécifiée, garantissant une génération de nombres efficace et fiable pour vos applications.
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!