diff --git a/docs/ru/designers/language-variables/language-assigned-variables.xml b/docs/ru/designers/language-variables/language-assigned-variables.xml index 8a3fcced..afbec825 100644 --- a/docs/ru/designers/language-variables/language-assigned-variables.xml +++ b/docs/ru/designers/language-variables/language-assigned-variables.xml @@ -1,133 +1,180 @@ - - - Переменные, установленные в PHP - - Переменные, установленные в PHP, употребляются со знаком доллар - $ перед ним. Переменные, установленные в - шаблоне с помощью функции assign употребляются - аналогичным образом. - - - Установленные переменные - + + + Переменные, назначенные из PHP + + К переменным, которые были + назначены из PHP можно обратиться, + указав перед их именем знак доллара ($). + Переменные, назначенные внутри шаблона при помощи функции + {assign} + работают таким же образом. + + + Назначенные переменные + PHP-скрипт + -Последний раз ты посещал нас {$lastLoginDate}. + -Последний раз ты посещал нас January 11th, 2001. +$smarty->assign('firstname', 'Doug'); +$smarty->assign('lastname', 'Evans'); +$smarty->assign('meetingPlace', 'New York'); + +$smarty->display('index.tpl'); + +?> ]]> - - - + + + Содержимое index.tpl: + + + +{* это не сработает, потому что переменные чувствительны к регистру *} +This weeks meeting is in {$meetingplace}. +{* а это - сработает *} +This weeks meeting is in {$meetingPlace}. +]]> + + + Результат обработки: + + + +This weeks meeting is in . +This weeks meeting is in New York. +]]> + + Ассоциативные массивы - Чтобы использовать переменную из ассоциативного массива, - надо указать ключ элемента после знака '.' (точка). + Вы можете также обращаться к ассоциативным массивам, которые + назначены из PHP, указав ключ после символа '.' (точка). - доступ к переменным ассоциативного массива - + Обращение к ассоциативному массиву + assign('Contacts', - array('fax' => '555-222-9876', - 'email' => 'zaphod@slartibartfast.com', - 'phone' => array('home' => '555-444-3333', - 'cell' => '555-111-1234'))); + array('fax' => '555-222-9876', + 'email' => 'zaphod@slartibartfast.example.com', + 'phone' => array('home' => '555-444-3333', + 'cell' => '555-111-1234') + ) + ); $smarty->display('index.tpl'); - -index.tpl: - -{$Contacts.fax}
-{$Contacts.email}
-{* you can print arrays of arrays as well *} -{$Contacts.phone.home}
-{$Contacts.phone.cell}
- -OUTPUT: - -555-222-9876
-zaphod@slartibartfast.com
-555-444-3333
-555-111-1234
+?> ]]>
+ + Содержимое index.tpl: + + + +{$Contacts.email}
+{* you can print arrays of arrays as well *} +{$Contacts.phone.home}
+{$Contacts.phone.cell}
+]]> +
+ + Результат обработки: + + + +zaphod@slartibartfast.example.com
+555-444-3333
+555-111-1234
+]]> +
- - Индексированные массивы + Индексы массивов - Можно использовать переменную из массива по е индексу. - Синтаксис аналогичен PHP. + Вы можете обращаться к массивам по их индексам примерно так же, + как и в самом PHP. - доступ к елементу массива по его индексу - + Обращение к массиву по индексу + assign('Contacts', - array('555-222-9876', - 'zaphod@slartibartfast.com', - array('555-444-3333', - '555-111-1234'))); +assign('Contacts', array( + '555-222-9876', + 'zaphod@slartibartfast.example.com', + array('555-444-3333', + '555-111-1234') + )); $smarty->display('index.tpl'); - -index.tpl: - -{$Contacts[0]}
-{$Contacts[1]}
-{* you can print arrays of arrays as well *} -{$Contacts[2][0]}
-{$Contacts[2][1]}
- -OUTPUT: - -555-222-9876
-zaphod@slartibartfast.com
-555-444-3333
-555-111-1234
+?> ]]> -
+
+ + Содержимое index.tpl: + + + +{$Contacts[1]}
+{* you can print arrays of arrays as well *} +{$Contacts[2][0]}
+{$Contacts[2][1]}
+]]> +
+ + Результат обработки: + + + +zaphod@slartibartfast.example.com
+555-444-3333
+555-111-1234
+]]> +
- Объекты - Чтобы использовать свойства обьектов, надо указать перед именем - атрибута знак `->'. + К свойствам объектов, + назначенных из PHP, можно обратиться, указав имя свойства после символов + '->'. - доступ к свойствам объекта - + Обращение к свойствам объекта + name}
-email: {$person->email}
- -OUTPUT: - -name: Zaphod Beeblebrox
-email: zaphod@slartibartfast.com
+name: {$person->name}
+email: {$person->email}
]]> -
+
+ + Результат обработки: + + + +email: zaphod@slartibartfast.example.com
+]]> +
-
+ - + Переменные файлов конфигурации - Для использования переменных, полученных из файлов конфигураии, + Для использования переменных, полученных из + конфигурационных файлов, необходимо заключить их имя между знаками # или через переменную $smarty.config. Для употребления их в качестве внедренныых переменных можно @@ -23,11 +24,17 @@ tableBorderSize = "3" tableBgColor = "#bbbbbb" rowBgColor = "#cccccc" ]]> + + + index.tpl: + + + @@ -43,11 +50,17 @@ rowBgColor = "#cccccc" ]]> + + + index.tpl: (альтернативный синтаксис) + + + @@ -63,11 +76,16 @@ rowBgColor = "#cccccc" ]]> + + результат выполнения обоих примеров: + + + This is mine @@ -89,6 +107,12 @@ rowBgColor = "#cccccc" пока они не будут загружены. Эта процедура описана далее в данном руководстве (config_load). + + См. также + Переменные + и + Зарезервированная переменная + $smarty - + Зарезервированная переменная {$smarty} + + Зарезервированная переменная {$smarty} может быть использована для получения + доступа к нескольким специальным переменным шаблона. Далее следует их полный + список. + + + Переменные запроса - Зарезервированная переменная {$smarty} используется для доступа - к нескольким специальным переменным. Далее следует полный их список. + К переменным запроса, + таким как $_GET, $_POST, $_COOKIE, $_SERVER, $_ENV и $_SESSION + (см. $request_vars_order + и $request_use_auto_globals + ), можно получить доступ, как показано в следующем примере: - - - Переменные запроса. - - К переменным из таких массивов, как _GET, _POST, _COOKIES, _SERVER, - _ENV и _SESSION, можно обращаться аналогично нижеприведенным примерам. - - - Вывод переменных запроса - + + Отображение переменных запроса + - - - - - - {$smarty.now} + + + - К текущему timestamp (штам времени) можно обратиться через - {$smarty.now}. Оно содержит число секунд с начала так - называемой Эпохи (Epoch, 1 января 1970 года) и может быть - передано прямо модификатору date_format для вывода текущей - даты. + По историческим соображениям, доступ к переменной {$SCRIPT_NAME} можно + получить непосредственно, хотя предпочтительным способом является обращение + {$smarty.server.SCRIPT_NAME}. - - использование {$smarty.now} - + + + + {$smarty.now} + + Текущая временная метка + содержится в переменной {$smarty.now}. Это число отображает количество + секунд, которые прошли с момента наступления так называемой Эпохи + (1 января 1970 года). Её можно прямо передавать модификатору + date_format + для отображения текущей даты/времени. + + + Использование {$smarty.now} + - - - + + + + + {$smarty.const} + + Вы можете обращаться к константам PHP напрямую. См. также Константы Smarty + + + Использование {$smarty.const} + + + + + - - {$smarty.const} - - Реализует доступ к константам PHP. - - - использование {$smarty.const} - - {$smarty.const._MY_CONST_VAL} - - - + + {$smarty.capture} + + Результат захвата конструкции {capture}..{/capture} + доступен при помощи переменной {$smarty}. См. раздел о + {capture} + для получения примера. + + - - {$smarty.capture} - - Доступ к выводу, сохраненному с помощью тэгов - {capture}..{/capture}, - можно получить используя переменную {$smarty}. Смотрите раздел capture для примера. - - + + {$smarty.config} + + Переменная {$smarty} может использоваться для обращения к загруженным конфигурационным переменным. + {$smarty.config.foo} является синонимом {#foo#}. См. раздел о + {config_load} + для получения примера. + + - - {$smarty.config} - - Переменная {$smarty} может быть использована для получения значений - переменных из файлов конфигураций. {$smarty.config.foo} - является синонимом для {#foo#}. Смотрите раздел config_load - для примера. - - + + {$smarty.section}, {$smarty.foreach} + + Переменную {$smarty} можно использовать для обращения к свойствам циклов + {section} и + {foreach}. + + - - {$smarty.section}, {$smarty.foreach} - - Переменная {$smarty} может быть использована для исппользования - свойств структур 'section' и 'foreach'. Смотри разделы по - section и - foreach. - - - - - {$smarty.template} - - Эта переменная содержит имя текущего шаблона. - - - - {$smarty.ldelim} - - Эта переменная используется для вставки символа левого разделителя. - См. также {ldelim},{rdelim}. - - - - {$smarty.rdelim} - - Эта переменная используется для вставки символа правого разделителя. - См. также {ldelim},{rdelim}. - - - - + + {$smarty.template} + + Эта переменная содержит имя текущего обрабатываемого шаблона. + + + + {$smarty.version} + + Эта переменная содержит версию Smarty, с которой был скомпилирован шаблон. + + + + {$smarty.ldelim}, {$smarty.rdelim} + + Эти переменные используются для отображения левого и правого ограничителей. + См. {ldelim},{rdelim}. + + + См. также + Переменные + и + Конфигурационные переменные + + +