salve ho un array di array di chiavi

tipo
Array
(
[0] => Array
(
[level] => 3
[nome] => fsdfjsdfjsdlk
[id] => 55
[sx] => 107
[dx] => 128
[lato] => S
[link] =>
[linkselfpage] =>
[ordine] => 0
[subhome] => ammininistrazione
)

[1] => Array
(
[level] => 3
[nome] => Consiglio Comunale xx
[id] => 107
[sx] => 197
[dx] => 204
[lato] => S
[link] =>
[linkselfpage] =>
[ordine] => 0
[subhome] => ammininistrazione
)
e tanti altri
)

Io dovrei ordinare ogni elemento in base al valore della chiave ordine ma solo nell'ambito del gruppo dello stesso livello "Lineare" cioè potrei avere sotto forma di elenco questo


1-pippo-L1-2
1-tizio-L1-1
2-caio-L1-3
2-sempro-L1-4
3-marco-L1-5
3-piero-L1-3
4-tore-L1-1

dovrebbe diventare

1-tizio-L1-1
1-pippo-L1-2
--
2-caio-L1-3
2-sempro-L1-4
--
3-piero-L1-3
3-marco-L1-5
--
4-tore-L1-1

Qualche idea ?