Простейший класс для подключения шаблонов.
- PHP 5.4+
Создаём объект View, в конструтор передаём абсолютный путь к папке с шаблонами:
$v = new Programulin\View(__DIR__ . '/v/');
Для получения html из php файла, лежащего в .../v/common/template.php, делаем так:
$html = $v->get('common/template');
Если в шаблон нужно подставить переменные, передаём их вторым параметром:
$params = [
'title' => 'Заголовок сайта',
'content' => 'Длинный текст статьи'
];
$html = $v->get('common/template', $params);
Теперь можно собирать страницу по кусочкам:
// Допустим, мы получили товары из базы данных
$products = [];
// Передаём массив с товарами, получаем html-шаблон с товарами.
$products_html = $v->get('products/table', ['products' => $products]);
// Передаём html товаров как контент в базовый шаблон
echo $v->get('common/template', ['title' => 'Заголовок', 'content' => $products_html]);