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

Résolu
abcd0 Messages postés 56 Date d'inscription   Statut Membre Dernière intervention   -  
abcd0 Messages postés 56 Date d'inscription   Statut Membre Dernière intervention   -
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
A voir également:

5 réponses

Utilisateur anonyme
 
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   Statut Membre Dernière intervention  
 
non ça marche pas !!! :(, il faut trier les valeur et pas par rapport au clés
0
Utilisateur anonyme
 
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   Statut Membre Dernière intervention  
 
oui j'ai essayé ça mais ça ne marche pas
0
ThEBiShOp Messages postés 8411 Date d'inscription   Statut Contributeur Dernière intervention   1 566
 
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
Utilisateur anonyme
 
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 8411 Date d'inscription   Statut Contributeur Dernière intervention   1 566
 
;)
0

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

Posez votre question
ElementW Messages postés 4814 Date d'inscription   Statut Contributeur Dernière intervention   1 223
 
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   Statut Membre Dernière intervention  
 
ok c'est bon mon erreur etait quand j'ai récupré le résultat de arsort dans un autre tableau; merci beaucoup
0