Search code examples
phparrayscodeigniter-2associative-array

Sorting array object in php


Array
(
    [0] => Array
        (
            [post_id] => 70
            [percentage] => 66.666666666667
        )

    [1] => Array
        (
            [post_id] => 72
            [percentage] => 44.444444444444
        )

    [2] => Array
        (
            [post_id] => 74
            [percentage] => 11.111111111111
        )

    [3] => Array
        (
            [post_id] => 82
            [percentage] => 60
        )

)

How to sort this array based on percentage in descending order i tried with this code but it is not working

usort($post_result, array($this, "myfunction"));  
function  myfunction($a, $b)
{
return strcmp($a->percentage, $b->percentage);
}

Solution

  • Try this:

    usort($post_result, function($a, $b) {
        if($a['percentage']==$b['percentage']) return 0;
        return $a['percentage'] < $b['percentage']?1:-1;
    });