Jump to content

Weird problem with array sorting


ruan567

Recommended Posts

Hi I've got an array like this:

 

1 : Array:

{

      mt_name => NAME1

      mt_id => 1

      mt_parent_id => 0

      mt_sort_id => 0

      children : Array:

      {

            3 : Array:

            {

                  mt_name => NAME2

                  mt_id => 3

                  mt_parent_id => 1

                  mt_sort_id => 0

                  children : Array:

                  {

                        14 : Array:

                        {

                              mt_name => NAME3

                              mt_id => 14

                              mt_parent_id => 3

                              mt_sort_id => 0

                              children : Array:

                              {

                                    553651842 : Array:

                                    {

                                          mt_name => NAME4

                                          mt_id => 553651842

                                          mt_parent_id => 14

                                          mt_sort_id => 999999999

                                          children : Array:

                                          {

                                                553651844 : Array:

                                                {

                                                      mt_name => NAME5

                                                      mt_id => 553651844

                                                      mt_parent_id => 553651842

                                                      mt_sort_id => 999999999

                                                }

                                          }

                                    }

                              }

                        }

                        46 : Array:

                        {

                              mt_name => NAME6

                              mt_id => 46

                              mt_parent_id => 3

                              mt_sort_id => 2

                              children : Array:

                              {

                                    134221887 : Array:

                                    {

                                          mt_name => NAME7

                                          mt_id => 134221887

                                          mt_parent_id => 46

                                          mt_sort_id => 999999999

                                          children : Array:

                                          {

                                                134221888 : Array:

                                                {

                                                      mt_name => NAME8

                                                      mt_id => 134221888

                                                      mt_parent_id => 134221887

                                                      mt_sort_id => 2

                                                }

                                                134221889 : Array:

                                                {

                                                      mt_name => NAME9

                                                      mt_id => 134221889

                                                      mt_parent_id => 134221887

                                                      mt_sort_id => 1

                                                }

                                          }

                                    }

                              }

                        }

 

etc etc

 

I need to sort the children according to 'mt_sort_id' throughout the whole array, for instance the last bit:

 

children : Array:

{

  134221888 : Array:

    {

      mt_name => NAME8

      mt_id => 134221888

      mt_parent_id => 134221887

      mt_sort_id => 2

    }

  134221889 : Array:

    {

      mt_name => NAME9

      mt_id => 134221889

      mt_parent_id => 134221887

      mt_sort_id => 1

    }

}

 

Should become:

 

 

children : Array:

{

  134221889 : Array:

    {

      mt_name => NAME9

      mt_id => 134221889

      mt_parent_id => 134221887

      mt_sort_id => 1

    }

  134221888 : Array:

    {

      mt_name => NAME8

      mt_id => 134221888

      mt_parent_id => 134221887

      mt_sort_id => 2

    }

 

}

 

because the mt_sort id in 134221889 is 1 which is smaller than the mt_sort_id 2 in 134221888.

 

Any ideas? The children go up to 7 levels deep.

 

Regards

Link to comment
https://forums.phpfreaks.com/topic/164516-weird-problem-with-array-sorting/
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.