[Закрыть]
 
popoff.donetsk.ua
Маленький мальчик с радостью смотрит на птиц и слушает их. Потом появляется «добрый отец» и считает, что он должен «поделиться» опытом и помочь сыну «развиться». Он говорит: «Это сойка, а это воробей». С того момента, как мальчик задумается, где здесь сойка, а где воробей, он перестаёт видеть птиц и слышать их. Он видит и слышит их так, как приучает его отец. /Эрик Берн/
Начало | Новости | Статьи | Форум | Опросы | Карта сайта | Обо мне
popoff.donetsk.ua - Статьи - Программирование - Модули - cms - cms.template - Переменные
Я это делаю
Персональное меню
Голосование
Деньги, либо любимое занятие? Постоянный адрес этого вопроса
Ваш возраст (не обязательно):

Введите целое число от 3 до 99.
Почему? (не обязательно):
Другие вопросы
Поиск по сайту
Реклама
Обмен электронных валют
money.dn.ua
Статистика

Переменные

Постоянный адрес статьи

Переменные - это значения, которые нужно вставить в 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] />

Сотрите так же

Статьи
 
Программирование
 
Модули
 
cms
 
cms.template
 
Синтаксис шаблонов
<template>
Комментарии в шаблонах
Пробелы и концы строк
Квадратные скобки
Переменные
CMS-сообщения
<if>
FAQ

Последняя модификация: 14.08.05 21:46

Не проходите мимо! Оставьте Ваш комментарий в форуме! >>>