Язык программирования PHP

         

Решение задачи с помощью шаблонов Smarty


Теперь, после знакомства с основными конструкциями Smarty, мы можем попытаться решить задачу отображения списка документов. Шаблон списка будет выглядеть следующим образом:

{* Smarty template index.tpl *} {config_load file="task.conf" } <html> <head><title>{#pageTitle#}</title> </head> <body> <ol> {section name=art loop=$title} <li><a href="{$fulltext[art]}"> {$title[art]}</a> ({$author[art]}) <br> <p> {$abstract[art]} {/section} </ol> </body> </html>

В файле конфигурации task.conf будем хранить название страницы и параметры для доступа к базе данных:

# глобальные переменные pageTitle = "List of documents" [Customer] pageTitle = "Список статей" [Database] host=localhost db=book user=nina pass=123

Скрипт (index.php), обрабатывающий написанный нами шаблон, может выглядеть таким образом:

Листинг 15.12. index.php (html, txt)

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



Содержание раздела