View file manual-ru/language.variables.smarty.html

File size: 11.45Kb
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Зарезервированная переменная {$smarty}</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="home" href="index.html" title="Руководство по Smarty">
<link rel="up" href="language.variables.html" title="Chapter 4. Переменные">
<link rel="prev" href="language.config.variables.html" title="Переменные файлов конфигурации">
<link rel="next" href="language.modifiers.html" title="Chapter 5. Модификаторы переменных">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<div class="navheader">
<table width="100%" summary="Navigation header">
<tr><th colspan="3" align="center">Зарезервированная переменная {$smarty}</th></tr>
<tr>
<td width="20%" align="left">
<a accesskey="p" href="language.config.variables.html">Prev</a> </td>
<th width="60%" align="center">Chapter 4. Переменные</th>
<td width="20%" align="right"> <a accesskey="n" href="language.modifiers.html">Next</a>
</td>
</tr>
</table>
<hr>
</div>
<div class="sect1" title="Зарезервированная переменная {$smarty}">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="language.variables.smarty"></a>Зарезервированная переменная {$smarty}</h2></div></div></div>
<p>
  Зарезервированная переменная {$smarty} может быть использована для получения
  доступа к нескольким переменным окружения и запроса. Далее следует их полный
  список.
 </p>
<div class="sect2" title="Переменные запроса">
<div class="titlepage"><div><div><h3 class="title">
<a name="language.variables.smarty.request"></a>Переменные запроса</h3></div></div></div>
<p>
   <a class="ulink" href="http://php.net/reserved.variables" target="_top">К переменным запроса</a>,
   таким как $_GET, $_POST, $_COOKIE, $_SERVER, $_ENV и $_SESSION
   (см. <a class="link" href="variable.request.vars.order.html" title="$request_vars_order">$request_vars_order</a>
   и <a class="link" href="variable.request.use.auto.globals.html" title="$request_use_auto_globals">$request_use_auto_globals</a>
   ), можно получить доступ, как показано в следующем примере:
  </p>
<div class="example">
<a name="id2651225"></a><p class="title"><b>Example 4.7. Отображение переменных запроса</b></p>
<div class="example-contents"><pre class="programlisting">

{* отображение параметра page из URL ($_GET) http://www.example.com/index.php?page=foo *}
{$smarty.get.page}

{* отображение параметра "page" из формы ($_POST['page']) *}
{$smarty.post.page}

{* отображение значения cookie "username" ($_COOKIE['username']) *}
{$smarty.cookies.username}

{* отображение серверной переменной "SERVER_NAME" ($_SERVER['SERVER_NAME'])*}
{$smarty.server.SERVER_NAME}

{* отображение переменной системного окружения "PATH" *}
{$smarty.env.PATH}

{* отображение переменной сессии PHP "id" ($_SESSION['id']) *}
{$smarty.session.id}

{* отображение переменной "username" из смешенных get/post/cookies/server/env *}
{$smarty.request.username}

   </pre></div>
</div>
<br class="example-break"><div class="note" title="Note" style="margin-left: 0.5in; margin-right: 0.5in;">
<h3 class="title">Note</h3>
<p>
    По историческим соображениям, доступ к переменной {$SCRIPT_NAME} можно
    получить непосредственно, хотя предпочтительным способом является обращение
    {$smarty.server.SCRIPT_NAME}.
   </p>
<pre class="programlisting">

&lt;a href="{$SCRIPT_NAME}?page=smarty"&gt;click me&lt;/a&gt;
&lt;a href="{$smarty.server.SCRIPT_NAME}?page=smarty"&gt;click me&lt;/a&gt;

   </pre>
</div>
</div>
<div class="sect2" title="{$smarty.now}">
<div class="titlepage"><div><div><h3 class="title">
<a name="language.variables.smarty.now"></a>{$smarty.now}</h3></div></div></div>
<p>
   Текущая <a class="ulink" href="http://php.net/function.time" target="_top">временная метка</a>
   содержится в переменной {$smarty.now}. Это значение отражает количество
   секунд, которые прошли с момента наступления так называемой Эпохи
   (1 января 1970 года). Её можно прямо передавать модификатору
   <a class="link" href="language.modifier.date.format.html" title="date_format">date_format</a>
   для отображения текущей даты/времени. Обратите внимание,
   что time() вызывается при каджом обращении; к примеру, скрипт, работающий
   три секунды и вызывающий $smarty.now в начале и в конце работы, покажет
   разницу в три секунды.
  </p>
<div class="example">
<a name="id2651684"></a><p class="title"><b>Example 4.8. Использование {$smarty.now}</b></p>
<div class="example-contents"><pre class="programlisting">

{* использование модификатора date_format для отображения текущей даты/времени*}
{$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"}

   </pre></div>
</div>
<br class="example-break">
</div>
<div class="sect2" title="{$smarty.const}">
<div class="titlepage"><div><div><h3 class="title">
<a name="language.variables.smarty.const"></a>{$smarty.const}</h3></div></div></div>
<p>
   Вы можете обращаться к константам PHP напрямую. См. также <a class="link" href="smarty.constants.html" title="Chapter 11. Константы">Константы Smarty</a>
  </p>
<div class="example">
<a name="id2651725"></a><p class="title"><b>Example 4.9. Использование {$smarty.const} для доступа к константам</b></p>
<div class="example-contents">
<pre class="programlisting">

// константа определена в PHP
define('_MY_CONST_VAL','CHERRIES');

</pre>
<pre class="programlisting">

{* вывод константы PHP в шаблоне *}
{$smarty.const._MY_CONST_VAL}

   </pre>
</div>
</div>
<br class="example-break">
</div>
<div class="sect2" title="{$smarty.capture}">
<div class="titlepage"><div><div><h3 class="title">
<a name="language.variables.smarty.capture"></a>{$smarty.capture}</h3></div></div></div>
<p>
   Результат обработки шаблона, сохраненный конструкцией <a class="link" href="language.builtin.functions.html#language.function.capture" title="{capture}">{capture}..{/capture}</a>,
   доступен при помощи переменной {$smarty.capture}. См. раздел о
   <a class="link" href="language.builtin.functions.html#language.function.capture" title="{capture}">{capture}</a>
   для получения примера.
  </p>
</div>
<div class="sect2" title="{$smarty.config}">
<div class="titlepage"><div><div><h3 class="title">
<a name="language.variables.smarty.config"></a>{$smarty.config}</h3></div></div></div>
<p>
   Переменная {$smarty} может использоваться для обращения к загруженным <a class="link" href="language.config.variables.html" title="Переменные файлов конфигурации">конфигурационным переменным</a>.
   {$smarty.config.foo} является синонимом {#foo#}. См. раздел о
   <a class="link" href="language.function.config.load.html" title="{config_load}">{config_load}</a>
   для получения примера.
  </p>
</div>
<div class="sect2" title="{$smarty.section}, {$smarty.foreach}">
<div class="titlepage"><div><div><h3 class="title">
<a name="language.variables.smarty.loops"></a>{$smarty.section}, {$smarty.foreach}</h3></div></div></div>
<p>
   Переменную {$smarty} можно использовать для обращения к свойствам циклов
   <a class="link" href="language.function.section.html" title="{section},{sectionelse}">{section}</a> и
   <a class="link" href="language.function.foreach.html" title="{foreach},{foreachelse}">{foreach}</a>.
   Это очень полезные значения вроде .first, .index и т.д.
  </p>
</div>
<div class="sect2" title="{$smarty.template}">
<div class="titlepage"><div><div><h3 class="title">
<a name="language.variables.smarty.template"></a>{$smarty.template}</h3></div></div></div>
<p>
   Возвращает имя текущего обрабатываемого шаблона. Этот пример показывает
   container.tpl и включенные в него banner.tpl, оба имеют вызов
   {$smarty.template}
  </p>
<pre class="programlisting">

&lt;b&gt;Main container is {$smarty.template}&lt;/b&gt;
{include file='banner.tpl}

  </pre>
<p>
   результат обработки шаблона:
  </p>
<pre class="programlisting">

&lt;b&gt;Main page if container.tpl&lt;/b&gt;
banner.tpl

  </pre>
</div>
<div class="sect2" title="{$smarty.version}">
<div class="titlepage"><div><div><h3 class="title">
<a name="language.variables.smarty.version"></a>{$smarty.version}</h3></div></div></div>
<p>
   Возвращает версию Smarty, с которой был скомпилирован шаблон.
  </p>
<pre class="programlisting">

&lt;div id="footer"&gt;Powered by Smarty {$smarty.version}&lt;/div&gt;

  </pre>
</div>
<div class="sect2" title="{$smarty.ldelim}, {$smarty.rdelim}">
<div class="titlepage"><div><div><h3 class="title">
<a name="language.variables.smarty.ldelim"></a>{$smarty.ldelim}, {$smarty.rdelim}</h3></div></div></div>
<p>
   Эти переменные используются для отображения левого и правого ограничителей -
   так же, как и <a class="link" href="language.function.ldelim.html" title="{ldelim},{rdelim}">{ldelim},{rdelim}</a>.
  </p>
<p>
   См. также
   <a class="link" href="language.syntax.variables.html" title="Переменные">Переменные</a>
   и
   <a class="link" href="language.config.variables.html" title="Переменные файлов конфигурации">Конфигурационные переменные</a>
  </p>
</div>
</div>
<div class="navfooter">
<hr>
<table width="100%" summary="Navigation footer">
<tr>
<td width="40%" align="left">
<a accesskey="p" href="language.config.variables.html">Prev</a> </td>
<td width="20%" align="center"><a accesskey="u" href="language.variables.html">Up</a></td>
<td width="40%" align="right"> <a accesskey="n" href="language.modifiers.html">Next</a>
</td>
</tr>
<tr>
<td width="40%" align="left" valign="top">Переменные файлов конфигурации </td>
<td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td>
<td width="40%" align="right" valign="top"> Chapter 5. Модификаторы переменных</td>
</tr>
</table>
</div>
</body>
</html>