У меня есть следующий набор результатов
Мне нужно создать такой массив
array(11) {
["Science & engineering"]=>
array(3) {
["Physics"]=>
array(1) {
["Work & energy"]=>
array(0) {
}
}
["Chemistry"]=>
array(0) {
}
["Biology"]=>
array(0) {
}
}
["Computing"]=>
array(0) {
}
["Arts & humanities"]=>
array(0) {
}
["Math"]=>
array(0) {
}
["Economics & finance"]=>
array(0) {
}
["Business"]=>
array(0) {
}
["Personal development"]=>
array(0) {
}
["Lifestyle"]=>
array(0) {
}
["Health & fitness"]=>
array(0) {
}
["Photography"]=>
array(0) {
}
}
Как видите, массив всего два уровня. Мне нужно создать массив, который уменьшается до бесконечности, пока есть еще дети и без повторений.
Редактировать: Я также приветствую любые другие эффективные решения этой проблемы. Конечным результатом должно быть наличие списка всех категорий в массиве в иерархическом порядке.