2010-02-14 2 views
0

Каков наилучший способ реализации многоуровневых списков/маркеров в php?Внедрение многоуровневых пулей

То, что я пытаюсь реализовать, - это система, которая берет короткие фразы и классифицирует их по разделам. Тем не менее, в то же время, я хотел бы, чтобы каждый раздел был разборным и способен иметь в нем подразделы.

Например: Раздел 10
Раздел 10.X
Раздел 10.xx

Я имел в виду того, что каждый подслой в виде массива, но я понимаю, что я видел то же самое тип разборки во многих местах, и все они кажутся похожими. Может быть, там уже есть пакет или библиотека, которые это делают? И если есть, как должна быть структурирована моя структура данных для хранения каждой записи?

ответ

0

Ваши пули выполняются в формате HTML, поскольку PHP просто генерирует HTML-код. Рассмотрим использование вложенных тегов <ul>.

Коллапс, скорее всего, будет javasscript. (Хотя мне интересно, если CSS : active psuedoclass будет работать в поддерживающих браузерах ...)

Что касается пакета, я не уверен. Вам, по сути, нужна функция рекурсивного генерации списков.

+0

Что было бы лучшим способом сохранить это на серверной стороне? Вложенные массивы? –

+0

Это может сработать. Вложенные массивы называются многомерными массивами. Я не эксперт. Просто указывая, что вы не просто фокусируетесь на PHP здесь ... Кроме того, Сарфраз имеет точку с Tree View, хотя я не уверен, что это такое. – Moshe

0

Для такого типа структуры, о котором вы упомянули, мне кажется, что вам нужно знать, что известно Tree View. Посмотрите, как это реализовать.

Скриншот:

alt text

0

Все, что делать с переключени, списки отображения, отступы и т.д., должны быть достигнуты относительно легко с HTML/CSS/JavaScript.

В таблице вашей категории вы можете создать поле parent_id, которое соответствует вашему основному идентификатору. Затем запустите циклы, чтобы отобразить ваш TLD, а также еще один цикл, чтобы отобразить категории внутри родителя.