Циклы с итераторами
Оператором цикла с итератором является конструкция вида
<TMPL_foreach ИМЯ_ЦИКЛА as ИМЯ_ИТЕРАТОРА>
<TMPL_var ИМЯ_ИТЕРАТОРА.ИМЯ_ПЕРЕМЕННОЙ> <TMPL_var ИМЯ_ПЕРЕМЕННОЙ>.
</TMPL_foreach>
Все переменные, содержащиеся в текущей итерации в любых уровнях вложенности доступны как элементы итератора, заданные через точку.
Если имя итератора не указано, переменная ищется сначала внутри итератора, а затем - в глобальной области данных; по тому же образу и подобию, что и в TMPL_loop.
Такоим образом, в приведенном примере <TMPL_var ИМЯ_ИТЕРАТОРА.ИМЯ_ПЕРЕМЕННОЙ> и <TMPL_var ИМЯ_ПЕРЕМЕННОЙ> выдадут один и тот же результат.
Использование итераторов полезно в том случае когда внутри вложенных циклов требуется вывести переменные из внешних циклов.
<TMPL_foreach pages as page>
<TMPL_foreach page.users as user>
<TMPL_foreach user.friends as friend>
Page: <TMPL_var page.id> <TMPL_var page.url>
User: <TMPL_var user.id> <TMPL_var user.name>
Friend: <TMPL_var friend.id> <TMPL_var friend.name>
</TMPL_foreach>
</TMPL_foreach>
</TMPL_foreach>
В остальном использование <TMPL_foreach> полностью аналогично <TMPL_loop>.
Copyright © 2003 - 2009 CTPP Dev. Team | http://ctpp.havoc.ru