code_32156.txt
второй код так
code_32159.txt
лучше использовать готовый шалонизатор, как минимум они быстрее чем такой, например smarty или twig.
------------ Дoбавленo в 12.38:
Шиблонизаторы созданы как замена php в шаблонах, мало смысла их использовать одновременно. Если существует конструкция которую не может шаблнизатор, выполни её в не из шаблона, а в шаблон верни только результат. Используй preg_match_all или preg_replace_callback будет быстрее.
------------ Дoбавленo в 14.00:
Можно сделать так, но такой вариант не хранит переменные между кусками php кода.
#php <?php
preg_replace_callback('/<\?(php|\=|)(.*)\?>/Ui', function($php) {
ob_start();
if($php[1] == '=')
$php[2] = "echo {$php[2]};";
eval($php[2]);
return ob_get_clean();
},$tpl);