Maison  >  Article  >  développement back-end  >  Comment sélectionner aléatoirement plusieurs éléments d'un tableau via PHP

Comment sélectionner aléatoirement plusieurs éléments d'un tableau via PHP

PHPz
PHPzoriginal
2023-04-17 14:58:181163parcourir

Lors de l'écriture de programmes PHP, vous devez souvent effectuer des opérations aléatoires sur des tableaux, comme sélectionner aléatoirement plusieurs éléments d'un tableau. Cet article présentera comment implémenter cette fonction via le langage PHP.

1. Utilisez la fonction array_rand

La fonction array_rand peut sélectionner aléatoirement un nombre spécifié d'éléments dans un tableau. Son prototype de fonction est le suivant :

array array_rand ( array $array , int $num )

Parmi eux, le paramètre $array représente le tableau d'éléments à sélectionner, et le paramètre $num représente le nombre à sélectionner. La fonction renvoie un tableau contenant les clés des éléments du tableau sélectionnés aléatoirement.

Par exemple, nous avons le tableau suivant :

$data = array(
    'apple',
    'banana',
    'orange',
    'pear',
    'peach',
    'grape'
);

Nous voulons sélectionner au hasard 3 éléments de ce tableau et renvoyer le nom de clé de l'élément sélectionné. Le code peut être écrit comme ceci :

$keys = array_rand($data, 3);

print_r($keys);

Le résultat de sortie est :

Array
(
    [0] => 4
    [1] => 2
    [2] => 0
)

Cela signifie que les éléments avec les noms de clé 4, 2 et 0 sont sélectionnés. Nous pouvons accéder à ces éléments en parcourant, par exemple :

foreach ($keys as $key) {
    echo $data[$key] . '<br>';
}

Le résultat de sortie est :

peach
orange
apple

2. Utilisez les fonctions shuffle et array_slice

Une autre façon de sélectionner aléatoirement des éléments d'un tableau est de mélanger l'ordre du tableau, puis retirez les premiers éléments. Les étapes spécifiques sont les suivantes :

  1. Utilisez la fonction shuffle pour perturber l'ordre du tableau.
$data = array(
    'apple',
    'banana',
    'orange',
    'pear',
    'peach',
    'grape'
);

shuffle($data);
  1. Utilisez la fonction array_slice pour supprimer les premiers éléments.
$subset = array_slice($data, 0, 3);

print_r($subset);

Le résultat de sortie est :

Array
(
    [0] => orange
    [1] => grape
    [2] => apple
)

3. Utilisez la fonction rand

Si vous souhaitez sélectionner aléatoirement un élément dans un tableau, vous pouvez également utiliser la fonction rand. Les étapes spécifiques sont les suivantes :

  1. Obtenez le nombre total d'éléments du tableau.
$count = count($data);
  1. Utilisez la fonction rand pour générer un nombre aléatoire compris entre 0 et le nombre total d'éléments du tableau moins 1.
$index = rand(0, $count - 1);
  1. Renvoie l'élément du tableau correspondant au nom de la clé.
echo $data[$index];

Cela implémente la fonction de sélection aléatoire d'un élément dans un tableau.

Résumé

Cet article présente trois méthodes de sélection aléatoire d'éléments dans un tableau, notamment l'utilisation de array_rand, shuffle et array_slice, les fonctions rand. Des méthodes spécifiques peuvent être sélectionnées en fonction de besoins spécifiques, et les performances des différentes méthodes varient également. Dans le développement réel, il est recommandé de choisir la méthode la plus appropriée en fonction de la situation spécifique.

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