我想按几个关键字对下面的多维数组进行排序——让我用一种简单的方式来解释。
这是我的多维数组的部分看起来像
[template] => Array
(
[0] => Array
(
[KeyA] => 123
[KeyB] => ABC
[KeyC] => #FFFFF
[custom] => Array
(
[0] => Array
(
[value] => bla
[var] => 2
)
[1] => Array
(
[value] => c1
[var] => 5
)
)
)
)
在这个模板数组中有很多多维数组,我现在想让它们按键c (#00000 first prio, #FFFFFF second prio, #333333 third prio)排序,然后按键a字母排序。
怎么做?
PHP有几个处理数组排序的函数,数组排序背后的逻辑是:
-
根据数组键进行排序,而另一些则根据值进行排序:$array['key'] = 'value';
-
排序后是否保持键和值之间的相关性,这可能意味着键被数值重置(0,1,2…)
-
排序顺序:字母顺序、从低到高(升序)、从高到低(降序)、数字、自然、随机或用户自定义
-
如果这些排序函数中的任何一个计算两个成员相等,则排序顺序未定义(排序不稳定)。
注意:所有这些排序函数直接作用于数组变量本身,而不是返回一个新的排序数组。
排序的主要功能描述了http://www.php.net/manual/en/array.sorting.php,对于创建自定义排序,您必须使用最适合自己的技巧。