Tri d'un tableau( résultat de calcul de nombre d'occurrence) [Résolu/Fermé]

Signaler
Messages postés
56
Date d'inscription
mercredi 3 avril 2013
Statut
Membre
Dernière intervention
10 juillet 2013
-
Messages postés
56
Date d'inscription
mercredi 3 avril 2013
Statut
Membre
Dernière intervention
10 juillet 2013
-
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

Messages postés
816
Date d'inscription
mercredi 20 février 2013
Statut
Membre
Dernière intervention
24 novembre 2018
92
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
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 63550 internautes nous ont dit merci ce mois-ci

Messages postés
56
Date d'inscription
mercredi 3 avril 2013
Statut
Membre
Dernière intervention
10 juillet 2013

non ça marche pas !!! :(, il faut trier les valeur et pas par rapport au clés
Messages postés
816
Date d'inscription
mercredi 20 février 2013
Statut
Membre
Dernière intervention
24 novembre 2018
92
As tu essayé? Parce que ça ne trie pas les clés.. C'est ksort qui trie par rapport aux clés du tableau.
Messages postés
56
Date d'inscription
mercredi 3 avril 2013
Statut
Membre
Dernière intervention
10 juillet 2013

oui j'ai essayé ça mais ça ne marche pas
Messages postés
8319
Date d'inscription
jeudi 22 mars 2007
Statut
Contributeur
Dernière intervention
18 juillet 2018
1 469
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
Messages postés
816
Date d'inscription
mercredi 20 février 2013
Statut
Membre
Dernière intervention
24 novembre 2018
92
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]
Messages postés
8319
Date d'inscription
jeudi 22 mars 2007
Statut
Contributeur
Dernière intervention
18 juillet 2018
1 469
;)
Messages postés
4761
Date d'inscription
dimanche 12 juin 2011
Statut
Contributeur
Dernière intervention
23 octobre 2020
1 181
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.
Messages postés
56
Date d'inscription
mercredi 3 avril 2013
Statut
Membre
Dernière intervention
10 juillet 2013

ok c'est bon mon erreur etait quand j'ai récupré le résultat de arsort dans un autre tableau; merci beaucoup