Задача казалось бы элементарная, но...
Подозреваю, что должна быть рекурсия. Которую я, пока, не могу осилить.
Пожалуйста, помогите дописать функцию.ФУНКЦИЯfunction cats($db) {
$arr = [];
$query = "
SELECT `table`.`title`,
`table`.`alias`,
`table`.`parent`,
`table`.`url`
FROM `table`
;";
foreach ($db->query($query) as $key => $value) {
$arr[$value['alias']]['title'] = $value['title'];
$arr[$value['alias']]['alias'] = $value['alias'];
$arr[$value['alias']]['parent'] = $value['parent'];
}
return $arr;
}
СТРУКТУРА ТАБЛИЦЫCREATE TABLE `table` (
`title` varchar(250) DEFAULT NULL,
`alias` varchar(250) DEFAULT NULL,
`parent` varchar(250) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;
INSERT INTO `table` (`title`, `alias`, `parent`) VALUES
('Фрукты и ягоды', 'fruits-and-berries', NULL),
('Овощи', 'vegetables', NULL),
('Арбуз', 'watermelon', 'fruits-and-berries'),
('Косточки от арбуза', 'watermelon-bones', 'watermelon'),
('Ядро косточки', 'core', 'watermelon-bones'),
('Манго', 'mango', 'fruits-and-berries'),
('Ананас', 'pineapple', 'fruits-and-berries'),
('Апельсин assy', 'orange', 'fruits-and-berries'),
('Лист от апельсина', 'orange-leaf', 'orange'),
('Сам апельсин', 'orange-itself', 'orange'),
('Мякоть', 'orange-flesh', 'orange-itself'),
('Кожура', 'peel', 'orange-itself'),
('Помидоры', 'tomatoes', 'vegetables'),
('Брокколи', 'broccoli', 'vegetables');
COMMIT;
Спасибо!