Hello à tous, J'espère poster dans la bonne section...
Alors j'ai un petit problème assez embétant :
J'ai un tableau formé de la manière suivante :
en gros un tableau de tableaux associatifs...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 tab[0] = array ("cle1"=>val1,"clé2"=>val2); tab[1] = array ("cle1"=>val1,"clé2"=>val2); tab[2] = array ("cle1"=>val1,"clé2"=>val2); tab[3] = array ("cle1"=>val1,"clé2"=>val2);
J'aimerai trier mon tableau "tab" en fonction de la valeur de val1, le tout de manière décroissante : exemple
J'ai essayé d'utiliser la fonction usort() de la manière suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 //Avant trie : tab[0] = array ("cle1"=>5,"clé2"=>val2); tab[1] = array ("cle1"=>10,"clé2"=>val2); tab[2] = array ("cle1"=>12,"clé2"=>val2); tab[3] = array ("cle1"=>6,"clé2"=>val2); //après trie : tab[0] = array ("cle1"=>12,"clé2"=>val2); tab[1] = array ("cle1"=>10,"clé2"=>val2); tab[2] = array ("cle1"=>6,"clé2"=>val2); tab[3] = array ("cle1"=>5,"clé2"=>val2);
Sauf que bein commes vous vous en doutez sa marche pas xD
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 usort ($tab, "fctCompare"); function fctCompare($elemA, $elemB) { return ($elemA['clé1'] > $elemB['clé1']) ? -1 : 1; }
ca me retourne l'erreur :
usort() function.usort: Invalid comparison function
Des pistes ?
Partager