Как я могу отсортировать массив со всеми дочерними элементами после их соответствующих родителей? Наверное, я пытаюсь сохранить дерево внутри одномерного массива. Я попытался понять это, используя usort, но я не думаю, что это правильный инструмент для работы.
Пример массива ввода:
array (0 => array ( 'id' => '1', 'parent' => '0', ),
1 => array ( 'id' => '2', 'parent' => '1', ),
2 => array ( 'id' => '3', 'parent' => '0', ),
3 => array ( 'id' => '5', 'parent' => '0', ),
4 => array ( 'id' => '17', 'parent' => '3', ),
5 => array ( 'id' => '31', 'parent' => '2', ),
6 => array ( 'id' => '32', 'parent' => '2', ))
Пример вывода: