Files
smarty/docs/ru/language-snippets.ent

72 lines
3.8 KiB
Plaintext
Raw Normal View History

2008-01-22 21:04:44 +00:00
<?xml version="1.0" encoding="UTF-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 2723 Maintainer: freespace Status: ready -->
<!ENTITY note.parameter.merge '<note>
2008-01-22 21:04:44 +00:00
<title>Техническое замечание</title>
<para>
2008-01-22 21:04:44 +00:00
Пераметр <parameter>merge</parameter> учитывает ключи массива,
поэтому если вы объединяете массивы с числовыми индексами, то они могут
наложиться друг на друга или привести к непоследовательному порядку ключей.
Результат отличается от действия функции PHP
2006-11-22 14:56:35 +00:00
<ulink url="&url.php-manual;array_merge"><varname>array_merge()</varname></ulink>,
2008-01-22 21:04:44 +00:00
которая заново нумерует элементы в массиве с числовоми ключами.
</para>
</note>'>
<!ENTITY note.parameter.function '<note>
<title>Техническое замечание</title>
<para>
Если значение параметра <parameter>function</parameter> указано в виде
<literal>array(&amp;$object, $method)</literal>, только один экземпляр
данного класса с данным методом <literal>$method</literal> может быть зарегистрирован.
В таком случае, в силу вступает последний зарегистрированный параметр
<parameter>function</parameter>.
</para>
</note>'>
<!ENTITY parameter.compileid '<para>
2008-01-22 21:04:44 +00:00
В качестве необязательного третьего аргумента вы можете передать
2005-08-28 16:51:15 +00:00
<parameter>$compile_id</parameter>.
2008-01-22 21:04:44 +00:00
Это полезно в случае, если вы хотите
скомпилировать несколько различных версий одного шаблона, например
несколько версий одного шаблона на разных языках.
Другое применение
<parameter>$compile_id</parameter> можно найти,
если вы используете несколько
2006-11-22 14:56:35 +00:00
<link linkend="variable.template.dir"><parameter>$template_dir</parameter></link>,
2008-01-22 21:04:44 +00:00
но только одну
2006-11-22 14:56:35 +00:00
<link linkend="variable.compile.dir"><parameter>$compile_dir</parameter></link>.
2008-01-22 21:04:44 +00:00
Устанавливайте свой <parameter>compile_id</parameter> для каждой
2006-11-22 14:56:35 +00:00
<link linkend="variable.template.dir"><parameter>$template_dir</parameter></link>,
2008-01-22 21:04:44 +00:00
иначе шаблоны с одинаковыми именами будут сохраняться поверх друг друга.
Также вы можете один раз указать
2006-11-22 14:56:35 +00:00
<link linkend="variable.compile.id"><parameter>$compile_id</parameter></link>,
2008-01-22 21:04:44 +00:00
вместо того, чтобы каждый раз передавать его при вызове этой функции.
</para>'>
2006-11-22 14:56:35 +00:00
<!ENTITY api.register.snippet '<para>
2008-01-22 21:04:44 +00:00
Callback-функция PHP может быть:
2006-11-22 14:56:35 +00:00
<itemizedlist>
<listitem>
<para>
2008-01-22 21:04:44 +00:00
Либо строкой, содержащей имя функции.
2006-11-22 14:56:35 +00:00
</para>
</listitem>
<listitem>
<para>
2008-01-22 21:04:44 +00:00
Либо массивом вида <literal>array(&amp;$object, $method)</literal>,
где <literal>&amp;$object</literal> - ссылка на объек, а
<literal>$method</literal> - строка, содержащая имя метода.
2006-11-22 14:56:35 +00:00
</para>
</listitem>
<listitem>
<para>
2008-01-22 21:04:44 +00:00
Либо массивом вида <literal>array($class, $method)</literal>,
где <literal>$class</literal> - строка, содержащая имя класса, а
<literal>$method</literal> - строка, содержащая имя метода этого класса.
2006-11-22 14:56:35 +00:00
</para>
</listitem>
</itemizedlist>
</para>'>