Проблема шаблонизации на уровне ядра PHP

antivir

Новичок
Проблема шаблонизации на уровне ядра PHP

Привет.

Есть ГЛАВНЫЙ шаблон страницы:
PHP:
<html><?php include($children_tpl) ?></html>
- он лежит в файле main.tpl
Есть ДОЧЕРНИЙ шаблон страницы:
PHP:
<b><?=$any_var?></b>
- он лежит в файле children.tpl

Есть скрипт script.php, в котором:
1. Определяется значение переменной $children_tpl (в нашем случае - имя файла - ./children.tpl)
2. Инклудится ГЛАВНЫЙ шаблон
2.1 В свою очередь, в ГЛАВНЫЙ шаблон maint.tpl, который инклудится в script.php, инклудится ДОЧЕРНИЙ шаблон, объявленный в переменной $children_tpl.


Это всё замечтельно работает, но хотелось бы, что бы в $children_tpl был не путь к файлу-шаблону, а УЖЕ ИСПОЛНЕННЫЙ КОД - html код, т.е. стоит задача заменить в ГЛАВНОМ шаблоне инструкции include на операторы echo - <?=....?> и выводить подшаблоны как строки, а не инклюдить их как файлы.

Нужно найти решение, что бы файл
PHP:
<b><?=$any_var?></b>
был исполнен и передан в некоторую переменную. А как это сделать - не знаю. Подозреваю, что это вообще невозможно сделать.

По сути, это очевидно нерешаемая проблема, из-за которой и были придуманы шаблонизаторы. Но юзать оные мне совсем не хочется. Smarty меня убил своей банальной ненужностью.

-~{}~ 05.07.06 12:07:

PS забыл добавить - ob_* функции не подходят по факту многих причин.
 

atv

Новичок
Для PHP 5.1.4

PHP:
<?php
        class Simple
        {
            public function __toString()
            {
                return "Hello World";
            }
        }
        
        $simple = new Simple;
        
?>

<?= $simple ?>
 
Сверху