Maison >développement back-end >tutoriel php >Méthode et exemple d'analyse de la fonction PHP shuffle() pour prélever plusieurs éléments aléatoires d'un tableau

Méthode et exemple d'analyse de la fonction PHP shuffle() pour prélever plusieurs éléments aléatoires d'un tableau

墨辰丷
墨辰丷original
2018-06-04 10:36:581561parcourir

Cet article présente principalement la méthode de la fonction PHP shuffle() pour obtenir plusieurs éléments aléatoires d'un tableau. Il analyse en détail la fonction, la définition, l'utilisation et les précautions associées sous forme d'exemples. peut s'y référer

Parfois, nous devons prendre plusieurs éléments aléatoires dans le tableau (comme créer des fonctions de recommandation aléatoires), alors comment l'implémenter en PHP ? Une solution relativement simple consiste à utiliser la fonction shuffle() fournie avec PHP. Voici un exemple simple :

$data[] = array(
    "name" => "脚本之家",
    "rank" => "40"
);
$data[] = array(
    "name" => "博客园",
    "rank" => "50"
);
$data[] = array(
    "name" => "CSDN",
    "rank" => "60"
);
$data[] = array(
    "name" => "ITEYE",
    "rank" => "50"
);
shuffle($data);
$i = 0;
foreach($data as $key =>$value ){
    if($i < 2) {
        echo $data[$key][&#39;name&#39;].&#39;<br />&#39;;
    }
    $i++;
}

shuffle()

fonction shuffle() Réorganiser les éléments du tableau dans un ordre aléatoire. Renvoie VRAI en cas de succès, FAUX sinon. Cette fonction attribue de nouvelles clés aux éléments du tableau. Cela supprimera les clés d'origine plutôt que de simplement les réorganiser.

Si un tableau associatif est transmis, vous constaterez que les noms de clés du tableau associatif seront perdus. Au fait, parlons de la solution ici :

// 打乱关联数组的排序
function shuffle_assoc($array)
{ 
  $randomized_keys = array_rand($array, count($array)); 
  foreach($randomized_keys as $current_key)
  { 
    $output[$current_key] = $array[$current_key]; 
  } 
  return $output;
}

De plus, PHP fournit également une fonction pour extraire aléatoirement les valeurs du tableau : array_rand(), son format d'appel Comme suit : array_rand (tableau, le nombre d'éléments extraits) Bien sûr, pour prendre en charge les tableaux bidimensionnels, il doit être encapsulé avant utilisation. Mais le programme précédent prend très bien en charge les tableaux bidimensionnels.

Résumé : Ce qui précède représente l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'étude de chacun.

Recommandations associées :

Le framework PHP MVC skymvc prend en charge la méthode d'implémentation de téléchargement multi-fichiers

PHP obtenant les données du formulaire et le HTML intégration Implémentation du script PHP

Implémentation PHP de l'affichage paginé des données et exemples simples

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