Относительно недавно я писал о том, как создать свой движок для сайта . И там я сказал, что для HTML-кода надо создавать специальные файлы-шаблоны, которые имеют расширение tpl . Однако, один из моих посетителей попросил меня поподробнее рассказать о том, как использовать файлы tpl . И в этом материале я постараюсь...
Относительно недавно я писал о том, как создать свой движок для сайта. И там я сказал, что для HTML-кода надо создавать специальные файлы-шаблоны, которые имеют расширение tpl. Однако, один из моих посетителей попросил меня поподробнее рассказать о том, как использовать файлы tpl. И в этом материале я постараюсь подробно рассказать о том, зачем нужны файлы tpl, как их использовать, и приведу небольшой пример.
Файлы tpl используются для написания в них HTML-кода, который впоследствии будет "вытащен" PHP и выведен пользователю на конкретных страницах. Например, в файле tpl может быть форма регистрации. То есть просто HTML-код обычной формы, ничего больше. В другом файле tpl может быть блок с панелью пользователя. В этой панели идёт "Приветствие пользователя" по имени, различные ссылки на редактирование профиля, а также кнопка выхода. Это всё примеры, где регулярно используются файлы tpl.
Однако, есть один очень важный нюанс. Рассмотрим поподробнее файл tpl с панелью пользователя. Я написал, что там идёт приветствие пользователя по имени. Но файл один, а пользователей очень много (следовательно, и имён много). Глупо создавать для каждого пользователя отдельный файл, где жёстко прописано его имя. Поэтому в файлах tpl используются специальные элементы - шаблонизаторы. Они записываются примерно в таком виде: {username}. Давайте приведу пример файла tpl, где используется шаблонизатор {username} (пусть файл называется user_panel.tpl):
<div>
<p>Здравствуйте, <b>{username}</b>!</p>
<p><a href = 'editprofile.php'>Редактировать профиль</a></p>
<p><a href = 'editprofile.php'>Выход</a></p>
</div>
Как видите, никаких <html>, <head> и <body> здесь нет. Только тот HTML-код, который отвечает за панель пользователя.
Теперь напишем PHP-код, который этот tpl-файл обрабатывает:
<?php
$username = "Пётр"; //Разумеется, это имя Вы должны сначала откуда-то взять, например, из базы данных
$user_panel = file_get_contents("user_panel.tpl");
$user_panel = str_replace("{username}", $username, $user_panel);
echo $user_panel;
?>
Как видите, всё очень и очень легко. Мы здесь получили содержимое файла user_panel.tpl, а затем с помощью функции PHP str_replace() заменили {username} на конкретное имя пользователя.
Это основа, которую необходимо знать для использования tpl-файлов. Далее Вы должны теперь понять, что страница будет собираться по кирпичикам, выводя все tpl-файлы в нужном порядке. Главное преимущество такого подхода, что разделяется программная часть и дизайнерская, благодаря чему становится крайне легко изменять дизайн и код PHP независимо друг от друга.
