И опять шаблоны...

druser

Новичок
И опять шаблоны...

Допустим, есть основной шаблон, скажем tpl.tpl.
есть другой шаблон, скажем subtpl.tpl.

Как правильно вывести второй шаблон, который должен быть вложен в первый?
На сколько правильно я сделаю, если сначало считаю subtpl.tpl в переменную, а потом выполню eval()?
 

Nimous

Guest
А каким образом у тебя обрабатываются шаблоны?

Или они не обрабатываются?
 

Мутник

Новичок
druser

шаблоны какие то стандартные (типа смарти) или свои самописные?
 

druser

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

Nimous
собственно мне и хотелось спросить как это лучше сделать... обработать...


Мутник
самописные...

ps может есть какой класс, который работает с вложенными шаблонами...

и еще по поводу стандартных шаблонов (типа смарти))), какие самые простые...
 

druser

Новичок
t3[0one]
я его пока не знаю... думаю скоро узнаю, а пока спрашиваю...
 

Begemot

Guest
а кроме инклуда или require(_once) имхо это никак не сделать
 

tolst

Новичок
tpl.tpl--->
<html>

%SUB_TPL%

</html>
---

считываеш это в файл, потом делаеш
str_replace("%SUB_TPL%", "считанный файл subtpl.tpl", $var);

Этот метод позволит поработать с текстом перед выводом...
я про обход инклуда...
 

Begemot

Guest
тогда придется "засорять" обработчик открытием файла и считыванием из него инфы
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
учите лучше смарти, благо документации предостаточно.
 

Begemot

Guest
c0dex
Зачем? для своих целей я использую свой парсер, мне хватает. Согласись если парсировать надо 2-3 элемента, то зачем загромождать сайт лишними библиотеками?
 

tolst

Новичок
да это по идее не назовёш "Засорением"... зато потом при желании можно будет делать с шаблоном и контентом перед выводом какие либо действия, например вот это:
$string = eregi_replace(" +", " ", $string);

-~{}~ 11.04.05 16:40:

Смарти удобен, но ооочень громоздкий... и не очень гибкий... он гибкий, но не очень :)
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Какой же он громоздкий, простите?

Это для того, чтобы прийти к нему вы сначала напишите свой парсер, после придумаете нечто вроде плагинов, потом прикрутите (возможно) кэширование и модификаторы, а потом наконец-то дойдете до смарти :) ?
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
да, и она не должна вас обойти стороной как мне казалось :)
короче, я закрываюсь.
 

tolst

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

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
тоже имею свою cms, с поддержкой множества пользователей, модульности, многоязычности, шкурок и т.д.
Время парсинга страницы от 0,04 с до 0,10.

Смарти - всего лишь инструмент, не более.
В дискуссию вступать не буду, имхо каждый имеет то, что потом его имеет.
:)
 
Сверху