2

My array is

Array
(
    [0] => Array
        (
            [package] => Bag
            [qty] => 10.00
            [price] => 19.00

        )

    [1] => Array
        (
            [package] =>  kgs
            [qty] => 1.00
            [price] => 2.00

        )

    [2] => Array
        (
            [package] => Bag
            [qty] => 25.00
            [price] => 50.00

        )

)

I need to sort this array based on price ascending value.i used usort for this.My code is looks like

usort($array, function ($b, $a) { return $b['price'] - $a['price']; });

then I got the resulting array as

  Array
(
    [0] => Array
        (
            [package] =>  kgs
            [qty] => 1.00
            [price] => 2.00

        )

    [1] => Array
        (
            [package] => Bag
            [qty] => 10.00
            [price] => 19.00

        )

    [2] => Array
        (
            [package] => Bag
            [qty] => 25.00
            [price] => 50.00

        )

)

But my actual needs is that getting result with preserving keys.that is,

Array
(
    [1] => Array
        (
            [package] =>  kgs
            [qty] => 1.00
            [price] => 2.00

        )

    [0] => Array
        (
            [package] => Bag
            [qty] => 10.00
            [price] => 19.00

        )

    [2] => Array
        (
            [package] => Bag
            [qty] => 25.00
            [price] => 50.00

        )

)

What will I do ??? Please help me.

jisna
  • 2,225
  • 2
  • 16
  • 23

0 Answers0