J'ai un tableau de 30 valeurs et j'ai besoin d'extraire de ce tableau 3 valeurs aléatoires différentes. Comment puis-je le faire?Choisissez 3 valeurs aléatoires différentes d'un tableau
Répondre
Shamelessly volée du manuel PHP:
<?php
$input = array("Neo", "Morpheus", "Trinity", "Cypher", "Tank");
$rand_keys = array_rand($input, 2);
echo $input[$rand_keys[0]] . "\n";
echo $input[$rand_keys[1]] . "\n";
?>
Notez que, à partir de PHP 5.2.10, vous voudrez peut-être aléatoire (randomisation) le les clés retournées via shuffle($rand_keys)
, sinon elles seront toujours en ordre (le plus petit index en premier). Autrement dit, dans l'exemple ci-dessus, vous pourriez obtenir "Neo, Trinity" mais jamais "Trinity, Neo".
Si l'ordre des éléments aléatoires n'est pas important, alors le code ci-dessus est suffisant.
utilisation shuffle($array)
puis array_rand($array,3)
Une raison particulière pour laquelle vous appelez 'shuffle'? –
juste pour s'assurer qu'il est vraiment aléatoire :) .. l'histoire derrière c'est le fait que l'année dernière en utilisant array_rand je voyais des résultats pas si aléatoires (articles similaires sur des séries consécutives), donc pour le rendre un peu plus aléatoire Je voudrais d'abord mélanger le tableau, puis le nourrir à la fonction array_rand et il semblait donner plus de valeurs aléatoires. –
Vous avez encore besoin de passer des clés aux valeurs ... –
Je ne sais pas pourquoi s'embêter avec array_rand()
du tout car c'est juste un appel de fonction supplémentaire pour apparemment pas de raison. Il suffit shuffle()
et trancher les trois premiers éléments:
shuffle($array);
print_r(array_slice($array, 0, 3));
Beaucoup plus propre, cela devrait être une réponse acceptée –
- 1. Choisissez des chaînes aléatoires de string.xml
- 2. sur des valeurs aléatoires
- 3. Mysql Choisissez parmi les différentes tables
- 4. Problème lors de la génération d'un tableau de valeurs aléatoires
- 5. Récupère un sous-ensemble de valeurs aléatoires d'un tableau php
- 6. tableau de nombres aléatoires
- 7. 3 différentes valeurs distinctes de la même table
- 8. Ajax renvoie des valeurs aléatoires?
- 9. Comment obtenir des valeurs distinctes d'un tableau de différentes tailles?
- 10. Transformer le tableau en différentes Tableau
- 11. À quel point les graines aléatoires doivent-elles être différentes?
- 12. Générer des valeurs aléatoires en C#
- 13. générer des valeurs aléatoires dans l'iPhone
- 14. valeurs aléatoires avec une distribution non uniforme
- 15. Choisissez parmi plusieurs lignes
- 16. Python comparer des dictons pour différentes valeurs
- 17. Générateur de nombres aléatoires en C# - valeurs uniques
- 18. comment donner des valeurs aléatoires de tableau 2-D dans scala?
- 19. Requête ET linq sur 3 listes différentes
- 20. Comment sélectionner des valeurs aléatoires d'une plage donnée
- 21. Développement Blackberry: choisissez sdk
- 22. ... Dans ... Choisissez en C#
- 23. Filtrer Tableau de valeurs
- 24. Différentes valeurs d'alpha pour différentes régions d'un sprite (Flex/Actionscript)
- 25. 3 Tableau dimensionnelle
- 26. dessiner des cercles aléatoires, stocker leurs coorindates dans un tableau
- 27. MySQL: Remplir avec des valeurs de position itérées aléatoires
- 28. pourquoi ne peux-je pas plus de deux valeurs de 3 tables différentes dans une requête
- 29. SQL: Choisissez parmi de nombreux-many à travers, joint les conditions dans le tableau par
- 30. valeurs extrait de tableau multidemensional
double possible de [Obtenir un sous-ensemble de valeurs aléatoires à partir d'un tableau php] (http://stackoverflow.com/questions/3504401/get-a-subset-of -random-values-from-an-array-php) – kennytm