Maison > Article > développement back-end > Tableau PHP apprenant à obtenir plusieurs éléments de manière aléatoire
Dans l'article précédent, nous avons présenté la méthode de mélange aléatoire des éléments d'un tableau. Si vous êtes intéressé, vous pouvez cliquer pour lire → "Apprentissage des tableaux PHP : tri aléatoire, mélange des éléments du tableau". Dans l'article suivant, nous examinerons le caractère aléatoire et présenterons comment obtenir aléatoirement un ou plusieurs éléments d'un tableau.
En fait, il existe une fonction de tableau array_rand() fournie en PHP. Sa fonction est d'obtenir de manière aléatoire, mais elle ne peut obtenir qu'un ou plusieurs noms de clés de tableau, mais ne peut pas obtenir de valeurs de clés.
Bien que array_rand() ne puisse pas obtenir directement la valeur de la clé du tableau, nous utilisons le nom de clé aléatoire obtenu par array_rand() et ajoutons quelques lignes de code supplémentaires pour obtenir une acquisition aléatoire d'éléments (à la fois le nom de la clé et la valeur de la clé).
Jetons un coup d'œil au code d'implémentation :
<?php $arr=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $rand = array_rand($arr); $arr2[$rand]=$arr[$rand]; var_dump($arr2); ?>
Résultat de sortie :
On peut voir que nous n'obtenons qu'un seul élément au hasard, car l'instruction array_rand($arr)
ne peut être qu'aléatoire Obtenir un nom de clé, alors comment obtenir plusieurs noms de clé ? array_rand($arr)
语句只能随机获取一个键名,那么如何获取多个键名呢?
只需要给array_rand()函数设置两个参数,第一个参数$array
指定数组,而第二个参数$number
指定要获取的键名的数目。
<?php $arr=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $rand = array_rand($arr,3); foreach($rand as $val){ $arr2[$val]=$arr[$val]; } var_dump($arr2); ?>
当array_rand()函数获取到了多个键名,那么就会返回一个包含随机键名的数组。
这样我们就可以使用foreach语句来遍历$rands
数组,不断的根据$rands
数组中的键名从$arrs
数组中取值,并赋值给新数组$arr2
即可。我们来看看输出结果:
刷新一下,结果就改变了:
注:array_rand()如果获取的数量($number
)超过了 $array
$array
spécifie le tableau et le deuxième paramètre $number
spécifie le nom de la clé à utiliser. être obtenu. rrreeeLorsque la fonction array_rand() obtient plusieurs noms de clés, elle renvoie un tableau contenant des noms de clés aléatoires.
De cette façon, nous pouvons utiliser l'instruction foreach pour parcourir le tableau $rands
et extraire en continu les données du tableau $arrs
en fonction des noms de clés dans le $rands. Récupérez la valeur et attribuez-la au nouveau tableau $arr2
. Jetons un coup d'œil au résultat :
Actualisez et le résultat change :
🎜Remarque : Si le nombre obtenu par array_rand() ($number
) dépasse la longueur de $array
, cela entraînera Erreur E_WARNING et renvoie NULL. 🎜🎜🎜🎜🎜D'accord, c'est tout. Si vous voulez savoir autre chose, vous pouvez cliquer ici. → →🎜Tutoriel vidéo php🎜🎜🎜Enfin, je recommande un tutoriel vidéo gratuit sur les tableaux PHP : 🎜Explication vidéo de la fonction tableau de fonctions PHP🎜, venez apprendre ! 🎜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!