Multi-Dimensional array sort first and second

Kristoffer

I'm using a function called subval_sort to sort a multi-dimensional array.

function subval_sort($a,$subkey) {
  foreach($a as $k=>$v) {
    $b[$k] = strtolower($v[$subkey]);
  }
  asort($b);
  foreach($b as $key=>$val) {
    $c[] = $a[$key];
  }
  return $c;
}

$songs =  array(
    '1' => array('artist'=>'Bing Crosby', 'songname'=>'White Christmas'),
    '2' => array('artist'=>'Elvis Presley', 'songname'=>'White Christmas'),
    '3' => array('artist'=>'Abba', 'songname' =>'Waterloo')
);

$songs = subval_sort($songs,'songname'); 
print_r($songs);

Works fine. Now I want to sort by songname as first and artist as second. So: if two (or more) songname-values are the same I want to sort by artist. Like in SQL: ORDER BY songname, artist.

Do you have any ideas how to solve it?

Fallen

You can use usort where you can define the custom comparison function

function cmp($a, $b)
{
    if(strcmp($a['songname'], $b['songname'])) {
        return strcmp($a['songname'], $b['songname']);
    }
    return strcmp($a["artist"], $b["artist"]);
}

implementation: usort($songs, "cmp");

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Dev

How to sort a multi-dimensional array by the second array in descending order?

From Dev

sort multi dimensional array by date

From Dev

Naturally sort a multi-dimensional array by key

From Java

How to Sort Multi-dimensional Array by Value?

From Dev

Sort a multi-dimensional Array in PHP

From Dev

PHP: Sort multi-dimensional array by date

From Dev

Sort Multi dimensional array using values

From Dev

SWIFT 2 - Sort Multi dimensional array by date

From Dev

Sort a multi dimensional array with dates as keys in PHP

From Dev

Sort Multi-dimensional Array by Size Value

From Dev

Sort Multi-dimensional Array by Value?

From Dev

php : multi-sort a multi-dimensional array

From Dev

Sort a multi-dimensional array based on an ordered array

From Dev

Unable to sort multi-dimensional array by date in PHP

From Dev

Swift 2: Sort Object/Multi-Dimensional Array

From Dev

How can i sort a multi-dimensional array by Number

From Dev

PHP - How can I sort this multi dimensional array by sum value?

From Dev

Sort multi-dimensional array - keep values of keys

From Dev

Sort Multi Dimensional Array by its keys from another arrays values

From Dev

Sorting a multi-dimensional array in JavaScript using a custom sort function

From Dev

Sort multi-dimensional array - keep values of keys

From Dev

Sort multi dimensional array based on sum of internal arrays in objective c

From Dev

Sort Multi-dimensional Array by Value from API

From Dev

How to sort multi-dimensional array in custom way

From Dev

Unable to sort multi-dimensional array by date in PHP

From Dev

Append two multi dimensional array and then sort by timestamp value in PHP

From Dev

Ruby: match first, second, this etc elements from a dimensional array

From Dev

ActionListener for multi-dimensional array only works for first button?

From Dev

Count multi-dimensional array's first dimension

Related Related

  1. 1

    How to sort a multi-dimensional array by the second array in descending order?

  2. 2

    sort multi dimensional array by date

  3. 3

    Naturally sort a multi-dimensional array by key

  4. 4

    How to Sort Multi-dimensional Array by Value?

  5. 5

    Sort a multi-dimensional Array in PHP

  6. 6

    PHP: Sort multi-dimensional array by date

  7. 7

    Sort Multi dimensional array using values

  8. 8

    SWIFT 2 - Sort Multi dimensional array by date

  9. 9

    Sort a multi dimensional array with dates as keys in PHP

  10. 10

    Sort Multi-dimensional Array by Size Value

  11. 11

    Sort Multi-dimensional Array by Value?

  12. 12

    php : multi-sort a multi-dimensional array

  13. 13

    Sort a multi-dimensional array based on an ordered array

  14. 14

    Unable to sort multi-dimensional array by date in PHP

  15. 15

    Swift 2: Sort Object/Multi-Dimensional Array

  16. 16

    How can i sort a multi-dimensional array by Number

  17. 17

    PHP - How can I sort this multi dimensional array by sum value?

  18. 18

    Sort multi-dimensional array - keep values of keys

  19. 19

    Sort Multi Dimensional Array by its keys from another arrays values

  20. 20

    Sorting a multi-dimensional array in JavaScript using a custom sort function

  21. 21

    Sort multi-dimensional array - keep values of keys

  22. 22

    Sort multi dimensional array based on sum of internal arrays in objective c

  23. 23

    Sort Multi-dimensional Array by Value from API

  24. 24

    How to sort multi-dimensional array in custom way

  25. 25

    Unable to sort multi-dimensional array by date in PHP

  26. 26

    Append two multi dimensional array and then sort by timestamp value in PHP

  27. 27

    Ruby: match first, second, this etc elements from a dimensional array

  28. 28

    ActionListener for multi-dimensional array only works for first button?

  29. 29

    Count multi-dimensional array's first dimension

HotTag

Archive