非常基本的問題但是我在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