Напиши это на смарти:
test.php
PHP:
# Все функции будут работать даже на самых ранних версиях PHP 4 ;)
$data = [
'case1' => ['title' => 'one'],
'case2' => ['title' => 'two'],
'case3' => ['title' => 'three'],
];
$tpl = '';
foreach ($data as $case) {
$tpl .= include('row.php');
}
echo $tpl;
row.php
PHP:
<?
return '<h1>' . $case['title'] . '</h1>';
Насколько я помню, кода на смарти получится больше, будут использованы функции понятные только тем, кто откроет справку, будет вызвано десятка три четыре левых функций внутри смарти.
PS не скажу что сам я не использую шаблонизаторы, сижу на встроенном в yii2 фреймворке, но своей фигни он не навязывает и реализован скорее для соблюдения патерна MVC. И зачем некоторые пытаются добавить туда еще и smarty мне абсолютно не понятно.