Tri d'un tableau( résultat de calcul de nombre d'occurrence)

Résolu/Fermé
abcd0 Messages postés 56 Date d'inscription mercredi 3 avril 2013 Statut Membre Dernière intervention 10 juillet 2013 - Modifié par abcd0 le 24/04/2013 à 09:15
abcd0 Messages postés 56 Date d'inscription mercredi 3 avril 2013 Statut Membre Dernière intervention 10 juillet 2013 - 24 avril 2013 à 11:59
Bonjour,


j'ai calculé le nombre d'occurrence des mot d'un tableau dans un autre tableau et je voudrai faire un tri décroissant en fonction de ce nombre d'occurrence mais je n'arrive pas,
après le calcul de nombre d'occurrence j'ai ce tableau:

[mot] => 1
[mal] => 2
[Moins] => 1
[semaine] => 3
[une] => 1
[dont] => 5

moi j'aimerai le trier comme ça:

[dont] => 5
[semaine] => 3
[mal] => 2
[mot] => 1
[une] => 1
[Moins] => 1
j'ai fait ça mais sans succès:(
for ($i=0; $i<$nb;$i++){
foreach($tab$i] as $cle=>$value){

$resulata[$i][]=array_multisort($tab[$i]);// vu que mon tableau est un tableau à deux dimensions
}

}
print_r($resultat );
Merci d'avance pour votre aide

5 réponses

Salut,

Regarde la fonction arsort($tab) en PHP , elle trie un tableau en ordre décroissant.
https://www.php.net/manual/fr/function.arsort.php
Résolu? ===> [RESOLU]
1
abcd0 Messages postés 56 Date d'inscription mercredi 3 avril 2013 Statut Membre Dernière intervention 10 juillet 2013
24 avril 2013 à 11:10
non ça marche pas !!! :(, il faut trier les valeur et pas par rapport au clés
0
Utilisateur anonyme
24 avril 2013 à 11:31
As tu essayé? Parce que ça ne trie pas les clés.. C'est ksort qui trie par rapport aux clés du tableau.
0
abcd0 Messages postés 56 Date d'inscription mercredi 3 avril 2013 Statut Membre Dernière intervention 10 juillet 2013
24 avril 2013 à 11:37
oui j'ai essayé ça mais ça ne marche pas
0
ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 565
24 avril 2013 à 11:43
Salut,

la solution à kyser soze est la bonne, ce que tu demandes, c'est le travail de la fonction arsort(), ni plus, ni moins.

J'ai quand même voulu vérifier :

$tab['mot']=1;
$tab['mal']=2;
$tab['Moins']=1;
$tab['semaine']=3;
$tab['une']=1;
$tab['dont']=5;

print_r($tab);
arsort($tab);
print_r($tab);


et ça donne bien ce que tu attends
0
Bon ben là je peux pas faire plus.

En faisant
<?php 
$tab=array(); 
$tab['mot']=1; 
$tab['mal']=2; 
$tab['Moins']=1; 
$tab['semaine']=3; 
$tab['une']=1; 
$tab['dont']=5; 

var_dump($tab); 

arsort($tab); 

var_dump($tab);  

?>


J'obtiens :

array (size=6)
'mot' => int 1
'mal' => int 2
'Moins' => int 1
'semaine' => int 3
'une' => int 1
'dont' => int 5

array (size=6)
'dont' => int 5
'semaine' => int 3
'mal' => int 2
'une' => int 1
'Moins' => int 1
'mot' => int 1

Il me semble pourtant que c'est ce que tu cherchais à faire.. J'ai peut être mal compris
Résolu? ===> [RESOLU]
0
ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 565
24 avril 2013 à 11:49
;)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 1 225
24 avril 2013 à 11:51
C'est magique de faire une recherche, regarde ce qu'on trouve:
La page de doc sur les différentes fonction de tri des tableaux.
0
abcd0 Messages postés 56 Date d'inscription mercredi 3 avril 2013 Statut Membre Dernière intervention 10 juillet 2013
24 avril 2013 à 11:59
ok c'est bon mon erreur etait quand j'ai récupré le résultat de arsort dans un autre tableau; merci beaucoup
0