非常基本的问题但是我在PHP.NET上找到答案时遇到了一些麻烦。通过中间键重新排序PHP数组作为开始(循环排序)
我有以下阵列:
Array (
[1] => Array
(
[1] => 4
[2] => 1
[3] => 5
[4] => 3
)
[2] => Array
(
[5] => 2
[6] => 8
[7] => 7
[8] => 6
)
[3] => Array
(
[9] => 10
[10] => 9
[11] => 12
[12] => 11
)
[4] => Array
(
[13] => 15
[14] => 16
[15] => 14
[16] => 13
)
)
我想重新排序的数组,以便在第一系列阵列的关键数字3成为第一,那么剩下的是重从那里订购到最终得到的结果是:
Array (
[3] => Array
(
[9] => 10
[10] => 9
[11] => 12
[12] => 11
)
[4] => Array
(
[13] => 15
[14] => 16
[15] => 14
[16] => 13
)
[1] => Array
(
[1] => 4
[2] => 1
[3] => 5
[4] => 3
)
[2] => Array
(
[5] => 2
[6] => 8
[7] => 7
[8] => 6
)
)
我正在寻找一种方式来做到这一点,所以我可以定义我需要排序的数组,然后第一级密钥,然后它会返回数组以这种方式。
标准的PHP密钥似乎没有提供这样的东西,所以最好能够拥有一个单独的函数,如$ newArray = reorder_array($ array,$ key);
我不需要任何第二层的排序,只有最初的4个主/第一层数组部分。
你的帮助是非常感谢,因为我一直坐在这一个一段时间没有一个清晰和简单的解决方案。
你试过asort()函数吗? – dev
我不明白你想要做的排序逻辑,对不起。请解释你想达到的逻辑(例如:究竟是什么使元素上升或下降等)。 – Calimero
@Calimero圆形排序。 – safarov