У меня большой массив, например:
Array
(
[1] => Array
(
[ID] => 1
[name] => Product 1
[productorder] => 7
[children] => Array
(
[1] => Array
(
[ID] => 54
[name] => Product 1.1
[productorder] => 4
)
[2] => Array
(
[ID] => 8
[name] => Product 1.2
[productorder] => 2
)
)
)
[2] => Array
(
[ID] => 2
[name] => Product 2
[productorder] => 1
)
[3] => Array
(
[ID] => 3
[name] => Product 3
[productorder] => 5
)
)
Мне нужно изменить порядок расположения всех массивов на значение productorder
. Он должен быть рекурсивным с помощью ключа «children», но некоторые массивы не могут иметь этот ключ. Я попытался из этой топи c:
usort($myArray, function($a, $b) {
return $a['order'] - $b['order'];
});
, но это не рекурсивно! Есть идеи?