mon problème est comme dans le sujet Trier les résultats grâce aux attributs sauf que c'est avec un tableau d'objets
Voici le code de mon fichier doc.xml
code php de mon script
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <document> <menu ordre="2" nom="Menu1" /> <menu ordre="3" nom="Menu2" /> <menu ordre="1" nom="Menu3" /> </document>
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 $doc= new domDocument(); $doc->load('doc.xml'); $pages = $doc->getElementsByTagName('menu');
Je souhaite faire un tri du tableau $pages grâce à l'attribut ordre pour avoir la résultat
- Menu3
- Menu1
- Menu2
parce que j'ai fait pas mal de recherche et j'ai pas trouvé la solution et j'ai essayé avec usort mais ça fonctionne pas :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 function sort_by_ordre($menu1, $menu2) { $ordre1 = intval($menu1->getElementsByTagName('ordre')); $ordre2 = intval($menu2->getElementsByTagName('ordre')); if ($ordre1 == $ordre2) return 0; else return ($ordre1 < $ordre2) ? -1 : 1; } usort($pages, 'sort_by_ordre');
Partager