xTemplate - генерация вложенных ненумерованных списков

mihdan

Новичок
xTemplate - генерация вложенных ненумерованных списков

Есть шаблонизатор xTemplate,
есть таблица в MySQL

Код:

Код:
id | parent_id | name
(Adjacency list)


Как правильно написать шаблон для xTemplate для генерации вложенных списков на РНР.
В РНР лучше использовать рекурсию или что-то иное?

Дошел ток до такого, но как реализовать на РНР... под вопросом

Код:

Код:
<!-- BEGIN: LEVEL0 -->  
<ul>  
    <!-- BEGIN: ROW0 -->  
    <li>{NAME}  
        <!-- BEGIN: LEVEL1 -->  
        <ul>  
            <!-- BEGIN: ROW1 -->  
            <li>{NAME}</li>  
            <!-- END: ROW1 -->  
        </ul>  
        <!-- END: LEVEL1 -->  
    </li>  
    <!-- END: ROW0 -->  
</ul>  
<!-- END: LEVEL0 -->
Заранее благодарю
 

mihdan

Новичок
Re: Re: xTemplate - генерация вложенных ненумерованных списков

Автор оригинала: Вурдалак
— и что же не устроило?
Не могу понять, как на РНР обработать данный шаблон, чтобы списки были правильно друг в друга вложены?
 

Вурдалак

Продвинутый новичок
sample.tpl
PHP:
<ul>  
    <!-- BEGIN: ARR -->  
    <li>
        {CONTENT}
    </li>  
    <!-- END: ARR --> 
</ul>
В {CONTENT} будет либо название чего-то там, либо ранее сгенерированный блок
PHP:
<ul> ... </ul>
-~{}~ 26.06.10 17:47:

Вернее, шаблон будет
PHP:
<ul>  
    <!-- BEGIN: ARR -->  
    <li>
        {ARR.CONTENT}
    </li>  
    <!-- END: ARR --> 
</ul>
или как там в xTemplate...
 

akxxiv

Новичок
Я в свое время использовал этот шаблонизатор в одном из проектов, но с ростом проекта я проклял день когда сел за баранку этого драндулета.. ))) Слишком много манипуляций надо произвести чтобы сделать небольшие изменения....
 

mihdan

Новичок
Тут уж без вариантов :)

Есть массив с данными, полученными из базы, надо сделать правильный шаблон для xTemplate (ul>li>ul>li) и вывести multi level меню
 

mihdan

Новичок
Я не уверен в правильности моего шаблона. Вы уверены, что он верный?
 

mihdan

Новичок
Спасибо, конечно, за критику, но данный вопрос не был решен ранее - поставил пару костылей и забыл, сейчас же интересно найти решение данной проблемы.

Я предположил, что данный вариант шаблона верный, а не "кинул заведомо нерабочий кусок говна".

Если есть вопросы по теме-отвечу

PS: если вам нечего сказать, лучше промолчать. Спасибо :)
 

mihdan

Новичок
Я в свое время использовал этот шаблонизатор в одном из проектов, но с ростом проекта я проклял день когда сел за баранку этого драндулета.. ))) Слишком много манипуляций надо произвести чтобы сделать небольшие изменения....
И что в итоге используете?
 

Фанат

oncle terrible
Команда форума
ты определись сначала, "что в итоге используете" или "без вариантов".
 

Фанат

oncle terrible
Команда форума
Пыхом, кстати, вложенные списки выводить - тоже не сахар. Я бы с интересом поглядел на решение от тех, кто его пропагандирует. чтобы на практике сразу и показать, что это лучший шаблонизатор. А не просто языком почесать.

На этой задаче, кстати, блочный шаблонизатор может неожиданно зарулить. И разворачивание дерева в лист, и рекурсивную функцию в шаблоне.
 
Сверху