Sort Multi Dimensional Array by its keys from another arrays values

bowser404

This is an issue I haven't come across before, and there doesn't appear to be a function for this.

I'm trying to sort the following multi dimensional array by its keys

Array (
    [hiphop] => Array (
        [0] => 2123
        [1] => 5683
        [2] => 2345
        [3] => 4567
    )
    [rnb] => Array (
        [0] => 2123
        [1] => 5683
        [2] => 2345
        [3] => 4567
    )
    [dubstep] => Array ( )
    [reggae] => Array ( )
    [trap] => Array ( )
)

From this arrays values

Array (
    [0] => hiphop
    [1] => dubstep
    [2] => reggae
    [3] => trap
    [4] => rnb
    [5] => rnb
) 

Has anyone attempted this before or know a workaround?

An explanation would be great as I'm new to multi dimensional arrays

Many thanks in advance if you can help!

The final output would match the value organsiation from the non multi dimensional array like so

Array (
    [hiphop] => Array (
        [0] => 2123
        [1] => 5683
        [2] => 2345
        [3] => 4567
    )
    [dubstep] => Array ( )
    [reggae] => Array ( )
    [trap] => Array ( )
    [rnb] => Array (
        [0] => 2123
        [1] => 5683
        [2] => 2345
        [3] => 4567
    )
)
dognose

The easiest Way would be to "flip" the array definining the sorting - then grab the values matching the new keys in the other array:

$s = array ("hiphop","dubstep","reggae","trap","rnb");
$target = array_flip($s);

foreach($target AS $key => &$value){
  $value = $array_containing_unsorted_values[$key];
}

Note: does not work if the same value appears twice in the sorting array - but that never should happen, cause does not make sence for a sorting-definition.

Should be way faster than using array_search 2 times within each sorting comparission.

result:

Array
(
    [hiphop] => Array
        (
            [0] => 2123
            [1] => 5683
            [2] => 2345
            [3] => 4567
        )

    [dubstep] => Array
        (
        )

    [reggae] => Array
        (
        )

    [trap] => Array
        (
        )

    [rnb] => Array
        (
            [0] => 2123
            [1] => 5683
            [2] => 2345
            [3] => 4567
        )

)

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Dev

Sort multi-dimensional array - keep values of keys

From Dev

Sort multi-dimensional array - keep values of keys

From Dev

Sort a multi dimensional array with dates as keys in PHP

From Dev

CakePHP 2.4.4 How can I sort a multi-dimensional array with Hash::sort by string keys and values?

From Dev

Sort Multi dimensional array using values

From Dev

Sort multi dimensional array by 3 values, or split array into 3 arrays by value

From Dev

I can't change keys of the multi-dimensional array and explode its values

From Dev

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

From Dev

Ruby delete values from multi dimensional array

From Dev

Get values from multi dimensional array

From Dev

Fetch values from multi dimensional array

From Dev

Ruby delete values from multi dimensional array

From Dev

Sort array dependent of another array keys values

From Dev

PHP merge multi-dimensional array keys from normal array

From Dev

PHP merge multi-dimensional array keys from normal array

From Dev

Sort single dimensional array & keep keys & values relation

From Dev

Creating a Multi-Dimentional from another Multi Dimensional Array

From Dev

Creating a Multi-Dimentional from another Multi Dimensional Array

From Java

How to remove the keys from a multi-dimensional associative array?

From Dev

sort multi dimensional array by date

From Dev

Sort Multi-dimensional Array by Value from API

From Dev

Returning nested arrays from multi-dimensional array

From Dev

how to create multi-dimensional array from two or more arrays

From Dev

php filter array values and remove duplicates from multi dimensional array

From Dev

bubble sort on Multi-dimensional Arrays

From Dev

Creating array from keys and values of another array

From Dev

Adding values of multi dimensional array

From Dev

Outputting Array Keys of Multi-Dimensional Array

From Dev

Sort multidimensional array keys based on another arrays key order

Related Related

  1. 1

    Sort multi-dimensional array - keep values of keys

  2. 2

    Sort multi-dimensional array - keep values of keys

  3. 3

    Sort a multi dimensional array with dates as keys in PHP

  4. 4

    CakePHP 2.4.4 How can I sort a multi-dimensional array with Hash::sort by string keys and values?

  5. 5

    Sort Multi dimensional array using values

  6. 6

    Sort multi dimensional array by 3 values, or split array into 3 arrays by value

  7. 7

    I can't change keys of the multi-dimensional array and explode its values

  8. 8

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

  9. 9

    Ruby delete values from multi dimensional array

  10. 10

    Get values from multi dimensional array

  11. 11

    Fetch values from multi dimensional array

  12. 12

    Ruby delete values from multi dimensional array

  13. 13

    Sort array dependent of another array keys values

  14. 14

    PHP merge multi-dimensional array keys from normal array

  15. 15

    PHP merge multi-dimensional array keys from normal array

  16. 16

    Sort single dimensional array & keep keys & values relation

  17. 17

    Creating a Multi-Dimentional from another Multi Dimensional Array

  18. 18

    Creating a Multi-Dimentional from another Multi Dimensional Array

  19. 19

    How to remove the keys from a multi-dimensional associative array?

  20. 20

    sort multi dimensional array by date

  21. 21

    Sort Multi-dimensional Array by Value from API

  22. 22

    Returning nested arrays from multi-dimensional array

  23. 23

    how to create multi-dimensional array from two or more arrays

  24. 24

    php filter array values and remove duplicates from multi dimensional array

  25. 25

    bubble sort on Multi-dimensional Arrays

  26. 26

    Creating array from keys and values of another array

  27. 27

    Adding values of multi dimensional array

  28. 28

    Outputting Array Keys of Multi-Dimensional Array

  29. 29

    Sort multidimensional array keys based on another arrays key order

HotTag

Archive