Переменные |  |
Переменные - это значения, которые нужно вставить в html-документ.
Для каждого конкретного шаблона доступен конкретный набор переменных.
Для простоты на данном этапе будем предполагать, что в переменных
содержатся только строки.
Замечание: Это сильно упрощенный взгляд на переменные. На самом деле
в шаблоны могут передаваться переменные, имеющие в качестве своего значения
массивы и булевские значения. Следует помнить, что значения таких переменных
нельзя непосредственно вставить в html-документ. Такие переменные
используются другими командами шаблона, например, для организации циклов,
проверок или для доступа по индексу внутри цикла.
Переменные существуют в контексте текущего пространства имен.
Определены следующие пространства имен:
- Пространство имен не указано
-
Если пространство имен не указано, то используется пространство имен по умолчанию.
Пространство имен по умолчанию задается значением атрибута
scope
тега <template>.
Если для тега <template> не указано значение атрибута
scope, то пространство имен по умолчанию принимается равным
local.
- local
-
Если имя переменной используется внутри цикла, то значение переменной
всегда берется из этого цикла. Если имя переменной используется за пределами
любых циклов, то значение берется из глобального пространства имен.
- global
-
Значение переменной всегда берется из глобального пространства имен.
- inherit
-
Если переменная определена внутри текущего цикла, то ее значение берется из текущего цикла.
Если переменная не определена внутри текущего цикла, но определена в родительском цикле, то значение берется из родительского цикла.
Если переменная не определена ни в одном из циклов, то значение берется из глобального пространства имен.
Это самый медленный вариант. Используйте его только если в этом есть
необходимость и другими способами Вашу задачу решить нельзя.
Команды вставки значений переменных:
<variable />
-
Вставить значение переменной с именем
variable.
Имя тега будет рассматриваться как имя переменной в случае, если этот тег
не является зарезервированным тегом, у этого тега нет ни одного параметра,
внутри этого тега нет никаких других тегов и нет никакого текста,
и этот тег не перечислен в списке тегов, которые не должны рассматриваться
как переменные.
Для такого способа вставки значения переменных нельзя указать пространство имен.
[variable]
-
Вставить значение переменной с именем
variable.
Переменная вставляется из пространства имен по умолчанию.
[scope variable]
-
Вставить значение переменной с именем
variable.
Переменная вставляется из указанного пространства имен.
<val name=“variable” [scope=“scope”] />
-
Вставить значение переменной с именем
variable.
Атрибут scope не является обязательным.
Если значение этого атрибута указано, то переменная вставляется из указанного
пространства имен, иначе переменная вставляется из пространства имен по умолчанию.
Замечание: Имена переменных чувствительны к регистру.
Замечание:
Если в имени переменной содержатся только заглавные буквы латинского алфавита
и символ подчеркивания (_), то это имя считается именем константы.
При загрузке такого шаблона должна быть определена константа с соответствующим
именем. Проверка существования констант не осуществляется и в случае
несуществования константы будет сгенерировано сообщение об ошибке.
Следующие строки эквивалентны:
<p class=“MsgOK”>[msg]</p>
<p class=“MsgOK”><msg /></p>
<p class=“MsgOK”><val name=“msg” /></p>
С явным указанием пространства имен:
<p class=“MsgOK”>[global msg]</p>
<p class=“MsgOK”><val name=“msg” scope=“global” /></p>
Можно использовать внутри значений атрибутов:
<input type=“text” value=“[s_value]” />
Вставка значения константы:
<input type=“text” maxlength=“[FORUM_MESSAGE_LENGTH]” />
Сотрите так же
Последняя модификация: 14.08.05 21:46 q Не проходите мимо! Оставьте Ваш комментарий в форуме! >>> Цитирование материалов моего сайта приветствуется! при условии видимой действующей! гиперссылки на мой сайт. [Ссылки] Если Вы нашли опечатку на этой странице, пожалуйста, выделите ее мышью и нажмите Ctrl+Enter. Сделаем язык чище! (c) Yuri Popoff, 2004 - 2008, popoff.donetsk.ua, style.donetsk.ua |
|