0
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);
}
3
  • possible duplicate of Sort Multi-dimensional Array by Value Commented Feb 22, 2015 at 8:02
  • Thanks @Rizier123 it does , but i need descending Commented Feb 22, 2015 at 8:05
  • 1
    Read the php manual for usort() and you will figure it out how to change it that it works for you :D If not show us your attempts and where you are stuck and what you don't understand Commented Feb 22, 2015 at 8:07

1 Answer 1

2

Try this:

usort($post_result, function($a, $b) {
    if($a['percentage']==$b['percentage']) return 0;
    return $a['percentage'] < $b['percentage']?1:-1;
});
Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.