按多维数组排序

时间:2013-02-27 04:09:09

标签: php sorting multidimensional-array

我想用几个关键字对以下多维数组进行排序 - 让我以简单的方式解释。

这就是我的多维数组中的部分看起来像

[template] => Array
            (
                [0] => Array
                    (
                        [KeyA] => 123
                        [KeyB] => ABC
                        [KeyC] => #FFFFF
                        [custom] => Array
                            (
                                [0] => Array
                                    (
                                        [value] => bla
                                        [var] => 2
                                    )

                                [1] => Array
                                    (
                                        [value] => c1
                                        [var] => 5
                                    )

                            )

                    )
            )

在该模板数组中有大量的多维数组,我现在想让它们按照KeyC(#00000 first prio,#FFFFFF second prio,#333333 third prio)进行排序,然后按KeyA字母排序。

怎么做?

1 个答案:

答案 0 :(得分:0)

PHP有几个处理排序数组的函数,数组排序背后的逻辑是:

  • 某些基于数组键的排序,而其他基于值:$ array ['key'] ='value';

  • 排序后是否保持键和值之间的相关性,这可能意味着键被重置(0,1,2 ......)

  • 排序顺序:按字母顺序排列,从低到高(升序),从高到低(降序),数字,自然,随机或用户定义

  • 如果这些排序函数中的任何一个将两个成员评估为相等,则订单未定义(排序不稳定)。

注意:所有这些排序函数都直接作用于数组变量本身,而不是返回一个新的排序数组。

排序的主要功能是http://www.php.net/manual/en/array.sorting.php,为了创建自定义排序,你必须采用最适合自己的技巧。