hellay Posté 25 Avril 2007 Posté 25 Avril 2007 Bonjour, j'ai un problème pour réussir une comparaison de diverses valeurs dans un tableau, je m'explique... J'ai plusieurs valeurs dans un tableau, disons ( 5, 5, 9, 9, 15, 4) Je veux savoir si il y a des cas ou une valeur existe plusieurs fois dans un tableau (dans mon exemple , 5 et 9 se répètent tous les deux deux fois), j'ai donc utilisé la fonction array_count_values, qui me sort : $tab1 = array (5, 5, 9, 9, 15, 4);$tab2 = array_count_values($tab1);// me sortira donc : Array( [4] => 1 [5] => 2 [9] => 2 [15] => 1) j'ai donc maintenant des valeurs utilisables parfaitement pour mes doubles etc... mais si je veux savoir combien de fois j'ai une répétition (4 fois 2 valeurs identiques etc ( dans ce cas la d avoir 2 fois 2 valeurs ) y a t'il une méthode simple ? ( et pas de faire une série de plein de conditions sur 20 lignes ) car je ne peux pas réutiliser array_count_value, sinon il va me prendre en compte mes resultats pour 4 et 15 (alors que je veux uniquement les versions a 2 ou plus dans mon tableau) merci d'avance des réponses, et si je n'ai pas été clair hésitez pas a me demander des détails
georges Posté 25 Avril 2007 Posté 25 Avril 2007 (modifié) salut, dans ton exemple, on pourrait faire ensuite : foreach ($tab2 as $key => $val){if ($val > 1) {echo $key,': ',$val,'<br>';}} edit : j'ai dû relire ton post 3 fois pour comprendre ton souci.. donc mon code ne t'avancera pas trop, désolé Modifié 25 Avril 2007 par georges
georges Posté 25 Avril 2007 Posté 25 Avril 2007 (modifié) me revoilà après avoir testé $tab3 = array();foreach ($tab2 as $key => $val){if ($val > 1) {array_push($tab3,array("chiffre"=>$key,"fois"=>$val));}}for($i=0;$i<count($tab3);$i++) {echo $tab3[$i]['chiffre'],' apparaît ',$tab3[$i]['fois'],' fois<br>'; } il te suffit donc de compter la "longueur" de ton tableau pour savoir combien de répétition tu as Modifié 25 Avril 2007 par georges
hellay Posté 25 Avril 2007 Auteur Posté 25 Avril 2007 Merci pour les bonnes infos et idées, ça marche parfaitement après l'avoir adapté et testé désolé pour les explications compliqués a la base, dur d expliquer un double de double
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant