mirror of
https://github.com/smarty-php/smarty.git
synced 2025-10-22 17:01:36 +02:00
91 lines
2.7 KiB
XML
91 lines
2.7 KiB
XML
<?xml version="1.0" encoding="windows-1251"?>
|
||
<!-- $Revision$ -->
|
||
<!-- EN-Revision: 1.1 -->
|
||
<sect1 id="api.fetch">
|
||
<title>fetch</title>
|
||
<methodsynopsis>
|
||
<type>string</type><methodname>fetch</methodname>
|
||
<methodparam><type>string</type><parameter>template</parameter></methodparam>
|
||
<methodparam choice="opt"><type>string</type><parameter>cache_id</parameter></methodparam>
|
||
<methodparam choice="opt"><type>string</type><parameter>compile_id</parameter></methodparam>
|
||
</methodsynopsis>
|
||
<para>
|
||
Функция возвращает вывод шаблона вместо его отображения на экран.
|
||
Укажите верный тип <link
|
||
linkend="template.resources">template resource</link>
|
||
и путь. В качестве необязательного второго параметра можно передать
|
||
cache id. Смотрите <link linkend="caching">раздел
|
||
"Кэширование"</link> для получения дополнительной информации.
|
||
</para>
|
||
<para>
|
||
В качестве необязательного третьего параметра, можно
|
||
передать compile id. Это необходимо в том случае, если
|
||
вы хотите скомпилировать разные версии одного и того же
|
||
шаблона, например для того, чтобы иметь различные
|
||
откомпилированные версии шаблона для различных языков.
|
||
Также, compile_id может быть полезен в том случае, если
|
||
более чем один $template_dir но только один $compile_dir.
|
||
В таком случае, установите различные compile_id для каждого
|
||
$template_dir, иначе, шаблоны, имеющие одинаковые номера
|
||
перезапишут друг друга. Также, вы можете установить переменную
|
||
<link linkend="variable.compile.id">$compile_id</link> однажды,
|
||
вместо того, чтобы передавать ее при каждом вызове fetch().
|
||
</para>
|
||
<example>
|
||
<title>fetch</title>
|
||
<programlisting>
|
||
<![CDATA[
|
||
include("Smarty.class.php");
|
||
$smarty = new Smarty;
|
||
|
||
$smarty->caching = true;
|
||
|
||
// обращаемся к БД только если отсутствует кэш
|
||
if(!$smarty->is_cached("index.tpl"))
|
||
{
|
||
|
||
// присваиваем некоторые значения
|
||
$address = "245 N 50th";
|
||
$db_data = array(
|
||
"City" => "Lincoln",
|
||
"State" => "Nebraska",
|
||
"Zip" = > "68502"
|
||
);
|
||
|
||
$smarty->assign("Name","Fred");
|
||
$smarty->assign("Address",$address);
|
||
$smarty->assign($db_data);
|
||
|
||
}
|
||
|
||
// перехватываем вывод
|
||
$output = $smarty->fetch("index.tpl");
|
||
|
||
// здесь выполняем какие либо действия с $output
|
||
|
||
echo $output;
|
||
]]>
|
||
</programlisting>
|
||
</example>
|
||
</sect1>
|
||
<!-- Keep this comment at the end of the file
|
||
Local variables:
|
||
mode: sgml
|
||
sgml-omittag:t
|
||
sgml-shorttag:t
|
||
sgml-minimize-attributes:nil
|
||
sgml-always-quote-attributes:t
|
||
sgml-indent-step:1
|
||
sgml-indent-data:t
|
||
indent-tabs-mode:nil
|
||
sgml-parent-document:nil
|
||
sgml-default-dtd-file:"../../../../manual.ced"
|
||
sgml-exposed-tags:nil
|
||
sgml-local-catalogs:nil
|
||
sgml-local-ecat-files:nil
|
||
End:
|
||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||
vim: et tw=78 syn=sgml
|
||
vi: ts=1 sw=1
|
||
-->
|