J'aimerais classer un tableau par ordre décroissant et récupérer les indices dans l'ordre de ce classement. C'est à dire dans mon exemple : $b= array(0,2,1,4,3)

J'ai réalisé ceci mais sans succès.
Y'a t'il une manière de copier le résultat du arsort() dans un nouveau tableau

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
19
20
 
	// classement du tableau par ordre décroissant d'utilisation
 
	//print_r($total);
	$size2=count($user);
	unset($a);
	unset($b);	
	for($l=0;$l<$size2;$l++){
	    $a[$l][]=$total[$l][0];
	    $a[$l][]=$l;
	}
	echo "<pre>";
	print_r($a);
	arsort($a); 
	print_r($a);// le arsort fonctione mais $a n'est pas modifié
	$size2=count($user);
	for($l=0;$l<$size2;$l++){
	    $b[]=$a[$l][1];
	}
	print_r($b);
Voici le tableau :
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
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
 
Array
(
    [0] => Array
        (
            [0] => 256 // classement par rapport à ce champs
            [1] => 0    // indice
        )
 
    [1] => Array
        (
            [0] => 3 // classement par rapport à ce champs
            [1] => 1    // indice
        )
 
    [2] => Array
        (
            [0] => 6 // classement par rapport à ce champs
            [1] => 2    // indice
        )
 
    [3] => Array
        (
            [0] =>    // classement par rapport à ce champs
            [1] => 3    // indice
        )
 
    [4] => Array
        (
            [0] => 2  // classement par rapport à ce champs
            [1] => 4    // indice
        )
 
)