Вход/Регистрация
Курс "Язык программирования PHP"
вернуться

Савельева Нина Владимировна

Шрифт:

смешанное значение, слияние);

Принцип действия этого примерно такой же, как и у assign. Метод append позволяет присоединить элемент к массиву. Если вы присоединяете значение к строковой переменной, то она преобразуется в массив, и значение добавляется уже в него. Так же, как и в assign, здесь можно передавать пары ключ/значение или ассоциативные массивы, содержащие эти пары. Если указать третий аргумент слияние равным TRUE, то значение будет не присоединено в качестве еще одного элемента, а слито воедино с текущим массивом.

$smarty->append(array(

title => $title,

author => $author))

Здесь если title была строкой, то она становится массивом и к нему добавляется еще один элемент со значением $title. То же самое происходит с переменной author.

Метод config_load

void config_load(имя файла, [имя секции]);

Метод загружает конфигурационный файл и встраивает его в шаблон. Аналогично этому методу действует функция config_load.

Пример: $smarty->config_load("task.conf","Database");

Метод display

void display(шаблон);

Метод отображает шаблон. У этого метода есть еще два опциональных параметра, о которых можно прочитать в документации.

Метод fetch

string fetch(шаблон);

Этот метод возвращает обработанный шаблон в строковую переменную, вместо того чтобы выводить его на экран. У этого метода есть еще два опциональных параметра, о которых можно прочитать в документации.

Встроенные функции

Smarty поставляется с набором встроенных функций, интегрированных в язык шаблонов. Нельзя создавать свои функции с такими же именами или модифицировать встроенные функции. Опишем некоторые из таких функций.

Функция config_load

Синтаксис:

{config_load file="имя_файла" }

Эта функция используется для загрузки в шаблон переменных из конфигурационных файлов. Кроме имени загружаемого файла, у этой функции может быть еще несколько дополнительных параметров. Например, параметр section, в котором указывают имя секции для загрузки. Более подробную информацию об этих и других параметрах можно получить из документации Smarty.

Пример:

{config_load file="task.conf"}

Функция capture

Синтаксис:

{capture name="имя_блока"

assign="имя_переменной"} ...

{/capture}

Эта функция предназначена для того, чтобы собирать в переменную выходные данные шаблона вместо того, чтобы выводить их на экран. Все, что находится между {capture name="varname"} и {/capture}, будет записано в переменную с именем varname. Захваченный таким образом контент может быть использован в шаблоне посредством специальной переменной $smarty.capture.varname, где varname - значение, переданное в атрибут name функции capture. Если имя переменной не задано, будет использовано имя default.

Второй параметр assign задает имя переменной, которой будет присвоено захваченное выходное значение. Этот параметр, как и name, не обязательный.

Функция section

Синтаксис:

{section name="имя_секции"

loop="переменная_для_выч-ния_числа_итераций"

[,start="индекс_начальной_позиции"]

[, step="шаг"] [,max="максимум_итераций"]

[,show="показывать_ли_секцию"] }...

{/section}

Секция Section - это цикл для обхода элементов массива. Обязательными являются параметры name, с помощью которого задается имя секции, и loop, который представляет собой переменную, определяющую число итераций цикла. Как правило, loop - это переменная типа массив, и число итераций секции равно числу элементов этого массива. Чтобы вывести переменную внутри цикла, нужно после имени переменной указать в квадратных скобках имя секции.

{section name=art loop=$title}

Название: {$title[art]}<br>

{/section}

Функция foreach

Синтаксис:

{foreach from="имя_массива"

item="имя_текущего_элемента"}

... {/foreach}

Кроме того, можно использовать дополнительные атрибуты key - имя ключа для текущего элемента массива и name - имя цикла, с помощью которого можно будет получать доступ к его свойствам. Атрибуты from и item - обязательные.

  • Читать дальше
  • 1
  • ...
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: