Bonsoir à tous,
Comme l'intitulé le dit, j'ai un problème pour trier de manière naturelle un tableau multidimensionnel.
voici un morceau de mon code :
Mon code trie bien le tableau par "numero" mais n'est pas un tri naturel humain comme si dessous
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 $tableau = array(); $tableau[] = array('numero' => '1', 'valeur' => '1 f. 50'); $tableau[] = array('numero' => '2', 'valeur' => '3 f.'); $tableau[] = array('numero' => '1b', 'valeur' => '1 f. 50'); $tableau[] = array('numero' => '3', 'valeur' => '5 f.'); $tableau[] = array('numero' => '1a', 'valeur' => '2 f.'); $tableau[] = array('numero' => '10', 'valeur' => '2 f.'); function compare($a, $b) { if($a['numero'] == $b['numero']) { return 0; } return($a['numero'] < $b['numero']) ? -1 : 1; } usort($tableau, "compare"); print_r($tableau);
1 - 1a - 1b - 2 - 3 - 10.
Que faire?
Merci d'avance pour votre aide
Partager