Page 1 sur 1

Probléme de array_multisort

Posté : 29 mai 2007, 10:39
par Cork1e
Bonjour tout le monde :)
Voilà mon probléme:

j'ai deux tableaux:

$tab1 $tab2
------Valeur------ et ------Libelle------
5__________________A
2__________________B
0__________________C
6__________________D
3__________________E
... ...

Aprés avoir rassemblé mes deux tableaux en un seul, je voudrai faire un tri de ce nouveau tableau
en fonction des valeurs décroissantes de la colonne "Valeur" et trier la colonne "Libelle" en fonction de celle-ci:

$tab3
------Valeur------|------Libelle------
5______________A
2______________B
0______________C
6______________D
3______________E


j'utilise la fonction

Code : Tout sélectionner

array_multisort($tab3[0],SORT_DESC,SORT_REGULAR,$tab3)
Mais elle ne marche pas dans mon cas....

Je voudrai que mon tableau ressemble à çà :
$tab3
------Valeur------|------Libelle------
6______________D
5______________A
3______________E
2______________B
0______________C
:roll: Merci beaucoup pour vos réponses !!! :wink:

Posté : 29 mai 2007, 12:53
par mere-teresa
Jen'ai pas compris ce que contenaient respectivement tab1 et tab2 :
$tab1 = array(
'A' => 5,
'B' => 2,
'C' => 0,
'D' => 6,
'E' => 3
);//ça c'est le tab2, 1 ou tab3 ?
Et ensuite tu veux trier les valeurs en décroissant (arsort()) et retrier quoi ?

Posté : 29 mai 2007, 13:43
par Cork1e
Désolé, je me suis mal exprimé :

Dans $tab1 j'ai

-Valeur-
|5|
|0|
|3|
|2|
|4|
---

dans $tab2
-Libelle-
|A|
|B|
|C|
|D|
|E|
----

J'ai regroupé $Tab1 et $Tab2 pour former un 3éme tableau:
$tab3
+-Valeur-+-Libelle-+
|5|A|
|0|B|
|3|C|
|2|D|
|4|E|
------

Je ne peux pas faire un rsort sur $tab1 car liée a $tab2 dans mon probléme(c'est pour çà que je crée $tab3). Je veux juste trier $tab3 en fonction de la colonne "Valeur" pour donner
$tab3 trié:
+-Valeur-+-Libelle-+
|5|A|
|4|E|
|3|C|
|2|D|
|0|B|
------
:twisted:

Posté : 29 mai 2007, 14:10
par Jules Petibidon
hello,

mere-teresa t'a donné une des clés. l'autre clé est array_combine().

avec tout ça tu devrais t'en sortir sans probleme :)

bon courage !