Просто используйте класс BlueM / tree php для создания дерева таблицы самосогласования в mysql.
Tree и Tree\node - это классы PHP для обработки данных который структурирован иерархически с использованием ссылок на родительские идентификаторы. Типичным примером является таблица в реляционной базе данных, где «родительское» поле каждой записи ссылается на первичный ключ другой записи. Конечно, Tree может не только использовать данные, происходящие из базы данных, но и все: вы предоставляете данные, а Tree использует их независимо от того, откуда поступают данные и как они были обработаны. подробнее
blockquote>Вот пример использования BlueM / tree:
query('SELECT id, parent, title FROM tablename ORDER BY title'); $records = $stm->fetchAll(PDO::FETCH_ASSOC); $tree = new BlueM\Tree($records); ...