Smarty Memory Template [compile] :: Include или eval ?

Luerssen

Новичок
Smarty Memory Template [compile] :: Include или eval ?

Здравствуйте.

Пишу плагин для смарти, который будет компилить темплейт из памяти(переменной).
И возник вопрос, после "компиляции" темплейта, сохранять его во временный файл(или кеш), и от туда загружать include/require или eval-ить его?

Плюсы\минусы:
Include:
- сохранение во временный файл лишний доступ к файловой системе.
+ доступность переменных не только смарти
+ возможность кэширования

eval:
+ по идее лучше(производительность), но не могу утверждать
• доступность переменных только смарти
- не возможность кэширования

• - тут плюсом будет безопасность видимости переменных, в ситуации когда компиляция идёт не в конце кода, а в середине. Или я ошибаюсь и eval кинет их в сам код скрипта?

Для чего: доступ к смарти из базы, да я знаю что это не есть гуд и а-ля "пхп в базе", но это оглашено в ТЗ =(, + я вижу N-ное кол-во плюсов для контент-менеджеровъ

Готов выслушать любую критику =)

Заранее всем самые наибольшие благодарности.
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Для чего: доступ к смарти из базы, да я знаю что это не есть гуд и а-ля "пхп в базе", но это оглашено в ТЗ =(, + я вижу N-ное кол-во плюсов для контент-менеджеровъ
+ и - хранения в БД обсуждались на прошлой неделе
Воспользуйтесь, пожалуйста, поиском

-~{}~ 22.07.07 18:48:

http://www.phpclub.ru/talk/showthread.php?s=&threadid=100902&highlight=%F5%F0%E0%ED%E8%F2%2A
 

Wicked

Новичок
ИМХО с точки зрения производительности лучше всего include + opcode cache.

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

Luerssen

Новичок
Mr_Max
Простите, но там маленько другое, там полное хранение шаблонов.
А мне нужно только часть, допустим чтобы контент менеджер могу быстро переставить порядок блоков.

Wicked
Можно подробней про узкое место? Лично я не вижу его ;-)
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
А мне нужно только часть, допустим чтобы контент менеджер могу быстро переставить порядок блоков.
И для данной задачи обязательно хранить шаблон в бд?
 

Gas

может по одной?
include + opcode cache
но это только наше с Wicked имхо
 
Сверху