Maison  >  Article  >  développement back-end  >  Comment générer des nombres aléatoires non répétitifs pour un affichage de contenu unique ?

Comment générer des nombres aléatoires non répétitifs pour un affichage de contenu unique ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-10-21 12:49:30958parcourir

How to Generate Non-Repeating Random Numbers for Unique Content Display?

Générer des nombres aléatoires non répétitifs pour un contenu unique

Lors de la génération de nombres aléatoires dans un but spécifique, comme l'affichage de listes Yelp, il est crucial pour s'assurer qu'ils ne se répètent pas. Cela garantit que tous les éléments prévus sont présentés sans aucune duplication.

Méthode Shuffle de PHP

La fonction PHP shuffle peut être utilisée pour générer un tableau de nombres non répétitifs. En fournissant la plage de nombres à générer, la lecture aléatoire les ordonnera de manière aléatoire.

$numbers = range(1, 20);
shuffle($numbers);

Cette approche est simple et efficace pour les petits ensembles de données, mais elle présente des limites lorsque la taille de l'ensemble de données est grande.

Alternative : Fonction RandomGen

Pour les ensembles de données plus volumineux, une fonction personnalisée appelée randomGen peut offrir de meilleures performances. Cette fonction génère un nombre spécifié de nombres aléatoires uniques dans une plage donnée.

<code class="php">function randomGen($min, $max, $quantity) {
    $numbers = range($min, $max);
    shuffle($numbers);
    return array_slice($numbers, 0, $quantity);
}

print_r(randomGen(0, 20, 20)); // Generates 20 unique random numbers</code>

Application spécifique à l'affichage des listes Yelp

Lors de l'application de cette méthode aux listes Yelp, lorsque vous avez un éventail d'entreprises stockées dans $businesses, vous pouvez suivre ces étapes :

  1. Générez un identifiant de liste aléatoire à l'aide de la fonction randomGen ou de la méthode shuffle.
  2. Stockez l'identifiant généré dans une table de base de données pour garder une trace des listes affichées.
  3. À chaque actualisation de page, générez un nouvel identifiant aléatoire et comparez-le au tableau. Si ce n'est pas déjà affiché, affichez cette annonce et ajoutez l'ID au tableau.
  4. Répétez l'étape 3 jusqu'à ce que les 20 annonces aient été affichées.

En suivant ces techniques, vous pouvez assurez-vous que toutes les listes Yelp sont affichées une seule fois sans aucune répétition, offrant ainsi une expérience utilisateur plus complète.

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