Wiki-учебник по веб-технологиям: PHP/Методы ...

Главная | Каталог |

Методы


Для работы с шаблонами класс Smarty определяет набор методов. Рассмотрим несколько основных методов.

Оглавление документа

1. Метод assign


Синтаксис:

void assign (смешанное значение);
void assign (имя переменной, смешанное значение);

Метод используется для того, чтобы присвоить значения переменным шаблона.

Можно передавать ассоциативные массивы, содержащие пары имя/значение переменных, или передавать пары имя/значение для каждой переменной в отдельности.

<?php
// передаем пары имя/значение для
// переменной Name и
// Address в отдельности
$smarty->assign("Name","Вася");
$smarty->assign("Address",$addr);
// здесь $addr может быть и массивом
// передаем ассоциативный массив
$smarty->assign(array(
"city" => "Новосибирск",
"street" => "Пирогова"));
// таким образом, переменные city и street
// получат соответствующие значения
?>


Пример 15.6. Использование метода assign()

2. Метод append


Синтаксис:

void append (смешанное значение);
void append (имя переменной, смешанное значение);
void append (имя переменной, смешанное значение, слияние);

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

$smarty->append(array(
title => $title,
author => $author))

Пример 15.7. Использование метода append()

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

3. Метод config_load


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

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

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

4. Метод display


void display(шаблон);

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

5. Метод fetch


string fetch(шаблон);

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