Чтение онлайн

на главную - закладки

Жанры

Курс "Язык программирования PHP"

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

Шрифт:

Установка и настройка ПО (Иванов Иван)

Рекомендации по установке и настройке web-сервера и интерпретатора PHP

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

Шаблоны FastTemplate

FastTemplate -

это набор классов, позволяющих реализовать работу с шаблонами. Логику добавить в шаблон FastTemplate нельзя, вся она должна находиться в коде программы. Идея работы шаблонов FastTemplate заключается в том, что любая большая страница состоит из множества кусочков, самые маленькие из которых - обычные строки текста, и они получают имя и значение.

Что представляет собой файл шаблона FastTemplate? Это обычный html-файл, в котором могут встречаться переменные особого вида, впоследствии обрабатываемые методами класса FastTemplate.

Синтаксис переменных в шаблонах FastTemplate описывается следующим выражением: {([A-Z0-9_]+)}

Это значит, что переменная должна начинаться с фигурной скобки "{". Второй и последующие символы должны быть буквами верхнего регистра от A до Z, цифрами или символами подчеркивания. Переменная вычисляется с помощью закрывающей фигурной скобки "}".

{TITLE}

{AUTH20}

{TOP_OF_PAGE}

Как уже было сказано, основная идея FastTemplate - создание страницы с помощью вложенных шаблонов. Например, для решения нашей задачи можно создать три файла шаблона:

<html>

<head><title>{TITLE_}</title>

</head>

<body>

{MAIN}

</body>

</html>

<ul>

{LIST_ELEMENT}

</ul>

<li><a href="#">{TITLE}</a>

({AUTHOR})

<br> {ABSTRACT}

Шаблоны мы создали - работу дизайнера выполнили. Теперь нужно научиться их обрабатывать, т.е. выполнить работу программиста. Сейчас создадим программу для обработки приведенных выше шаблонов.

Перед началом работы с шаблонами FastTemplate нужно подключить этот набор классов к нашей программе. В реальной жизни набор классов FastTemplate записан в один файл, как правило, с названием class.FastTemplate.php3, поэтому подключить его можно, например, с помощью команды:

include("class.FastTemplate.php3");

Следующий важный шаг - это создание объекта класса FastTemplate, с которым впоследствии мы будем работать:

$tpl = new FastTemplate(

"/path/to/templates");

В

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

Методы FastTemplate

Далее необходимо изучить методы, которые можно применять к созданному объекту класса FastTemplate. Параллельно обратим внимание, как их можно использовать для решения нашей задачи.

Для работы с FastTemplate нужно знать четыре основных метода: define, assign, parse и FastPrint.

Метод define

Синтаксис:

define( array ( ключ => значение,

ключ1 => значение1, ... ))

Метод define связывает имя файла шаблона с более коротким именем, которое можно будет использовать в программе. То есть "ключ" - это имя, которое мы будем использовать в программе для ссылки на файл шаблона, имя которого записано в строке "значение". Реальные имена файлов шаблонов не рекомендуется использовать нигде, кроме метода define. При вызове метода define происходит загрузка всех определенных в нем шаблонов.

$tpl->define( array (main => "main.tpl",

list_f => "list.tpl",

list_el=> "list_element.tpl" ));

Здесь мы задаем псевдонимы именам файлов шаблонов. Эти псевдонимы, т.е. переменные main, list_f и list_el, будут использоваться в программе вместо соответствующих имен файлов main.tpl, list.tpl и list_element.tpl.

Метод assign

Синтаксис:

assign( (пары ключ/значение) или

( array(пары ключ/значение) )

Метод assign присваивает переменным значения, "ключ" - это имя переменной, а "значение" - значение, которое ей нужно присвоить. Чтобы переменная в шаблоне была заменена значением, это значение нужно задать ей с помощью метода assign. Согласно синтаксису этот метод можно использовать в двух различных формах. В FastTemplate есть только один массив, поэтому, если вы повторно задаете значение одному и тому же ключу, оно будет перезаписано.

$tpl->assign(array(

TITLE => "Установка и настройка ПО",

TITLE => "Введение в PHP" ));

Здесь мы дважды устанавливаем значение переменной, доступной в файлах шаблона по имени TITLE. Эта переменная будет иметь последнее присвоенное ей значение, т.е. она равна строке "Введение в PHP".

Метод parse

Синтаксис:

parse (возвращаемая переменная,

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

Отцы-основатели. Весь Саймак - 7.Игра в цивилизацию

Саймак Клиффорд Дональд
7. Отцы-основатели. Весь Саймак
Фантастика:
научная фантастика
5.00
рейтинг книги
Отцы-основатели. Весь Саймак - 7.Игра в цивилизацию

Обратная сторона пути

Панкеева Оксана Петровна
11. Хроники странного королевства
Фантастика:
фэнтези
9.55
рейтинг книги
Обратная сторона пути

Государство и революции

Шамбаров Валерий Евгеньевич
Научно-образовательная:
история
7.86
рейтинг книги
Государство и революции

Кодекс Охотника. Книга XIX

Винокуров Юрий
19. Кодекс Охотника
Фантастика:
фэнтези
5.00
рейтинг книги
Кодекс Охотника. Книга XIX

Том 5. Преступление и наказание

Достоевский Федор Михайлович
5. Собрание сочинений в пятнадцати томах
Проза:
русская классическая проза
7.92
рейтинг книги
Том 5. Преступление и наказание

Город

Загорцев Андрей Владимирович
Проза:
военная проза
8.75
рейтинг книги
Город

Тайна двух океанов (илл. Г.Шевякова)

Адамов Григорий Борисович
Фантастика:
научная фантастика
8.50
рейтинг книги
Тайна двух океанов (илл. Г.Шевякова)

Фантастика 1967

Булычев Кир
Фантастика
Фантастика:
научная фантастика
5.00
рейтинг книги
Фантастика 1967

Приключения Тома Сойера. Приключения Гекльберри Финна

Твен Марк
12. Библиотека приключений
Детские:
детские приключения
9.48
рейтинг книги
Приключения Тома Сойера. Приключения Гекльберри Финна

Телохранитель Генсека. Том 1

Алмазный Петр
1. Медведев
Фантастика:
попаданцы
альтернативная история
7.17
рейтинг книги
Телохранитель Генсека. Том 1

Ложная память

Кунц Дин Рей
37. Книга-загадка, книга-мистика
Детективы:
триллеры
8.36
рейтинг книги
Ложная память

Дважды одаренный. Том VIII

Тарс Элиан
8. Дважды одаренный
Фантастика:
боевая фантастика
альтернативная история
аниме
попаданцы
5.40
рейтинг книги
Дважды одаренный. Том VIII

Сказание о белых камнях

Голицын Сергей Михайлович
Приключения:
исторические приключения
5.00
рейтинг книги
Сказание о белых камнях

Мы друг друга не выбирали

Кистяева Марина
1. Мы выбираем...
Любовные романы:
остросюжетные любовные романы
прочие любовные романы
современные любовные романы
5.00
рейтинг книги
Мы друг друга не выбирали