PHP按数字键排序数组

I am attempting to sort an array using PHP and want it to be from highest to lowest value using its key. the key came from a PHP query which was pushed using intval.

do{

   //other operations above..

    $average[] = intval(round($spec['volume']));

}while(odbc_fetch_row($re));

Now I have a function to count every occurrence of a value.

function array_count_values_of($array) {
    krsort($array);
    $counts = array_count_values($array);

    print_r($counts);
}

I used krsort($array) which as per documentation.

Sort an associative array in ascending order, according to the key:

Now here is my output.

Array ( [101] => 1 [103] => 5 [106] => 10 [104] => 4 [108] => 10 [105] => 8 [102] => 2 [113] => 12 [107] => 12 [110] => 12 [115] => 16 [112] => 9 [118] => 3 [114] => 7 [111] => 8 [98] => 1 [109] => 10 [123] => 1 [116] => 8 [117] => 2 [99] => 1 [125] => 2 [121] => 1 [135] => 1 [124] => 2 [120] => 1 ) 

Its weird because at first look its ok but when the key value is 108 it returns 105 again. any suggestion would be great!