Циклы
Цикл - процесс многократного повторения заданных действий.
В СT++ есть единственный тип циклов -- прямое прохождение по всему массиву данных. Оператором цикла являемся конструкция вида
<TMPL_loop МОДИФИКАТОРЫ ИМЯ_ЦИКЛА>
Внутренний код цикла.
</TMPL_loop>
В данный момент есть четыре модификатора оператора цикла:
- __GLOBAL_VARS__ делает видимым внутри цикла глобальные переменные.
- __NO_GLOBAL_VARS__ отменяет действие модификатора __GLOBAL_VARS__.
- __CONTEXT_VARS__ создает внутри цикла контекстные переменные.
- __NO_CONTEXT_VARS__ отменяет действие модификатора __CONTEXT_VARS__.
ВАЖНО! Изменение этих опций влияет не только на текущий цикл, но и на все вложенные внутрь него циклы.
Сделано это для того, чтобы при одновременном изменении __GLOBAL_VARS__ и __CONTEXT_VARS__ не возникало коллизий между вложенными циклами.
Пример 3.1:
Шаблон:
<table width="100%">
<TMPL_loop __CONTEXT_VARS__ EMPLOYEE_INFO>
<tr>
<td>#: <TMPL_var __COUNTER__></td>
<td>Имя: <TMPL_VAR NAME></td>
<td>Должность: <TMPL_VAR JOB></td>
</tr></TMPL_LOOP>
</table>
Параметры:
EMPLOYEE_INFO
[
{ NAME => "Иванов Иван", JOB => "Архитектор" },
{ NAME => "Петров Петр", JOB => "Строитель" }
]
Вывод:
<table width="100%">
<tr>
<td>1</td>
<td>Имя: Иванов Иван</td>
<td>Должность: Архитектор</td>
</tr>
<tr>
<td>2</td>
<td>Имя: Петров Петр</td>
<td>Должность: Строитель</td>
</tr>
</table>
Copyright © 2003 - 2005 CTPP Dev. Team | http://reki.ru/products/ctpp