Forum Webscript.Ru

Программирование => PHP => Тема начата: Britva от 08 Января 2002, 11:31:32

Название: Шаблоны
Отправлено: Britva от 08 Января 2002, 11:31:32
Класс написал для работы с шаблонами (очередной :)) на php
http://eugeny.com/programmer/scripts/template.zip
рез-т можно отобразить с помощью функции eval, либо просто вывести

Ваше мнение интересно.

взял за основу работу с шаблонами в XMB (и не только), но там они хранятся в БД, а я сделал в файлах (что намного удобней).
ИМХО мне очень такой способ понравился. примерчик маленький есть.

класс не тестировал, так что ошибки могут быть.
Название: Шаблоны
Отправлено: NeoNox от 08 Января 2002, 11:49:24
Цитировать
взял за основу работу с шаблонами в XMB

А в чем там новшество? Я не ставил и не колупал XMB, а суть знать интересно... :)
Название: Шаблоны
Отправлено: Britva от 08 Января 2002, 15:09:56
Посмотрел щас wbb, там такая же система шаблонов. только уже с файлами :) как у меня :)
работает все на основе eval.

а в XMB они хранятся в БД, что имхо очень неудобно. но зато у него есть lang-файл :)

А так, идея не оригинальна, я просто очень хотел чтобы можно было такое использовать. Кстати, ни один класс/библиотека шаблонов не использует eval (по крайней мере я не видел), везде рег.выражения для замены {}, <##> ...
Название: Шаблоны
Отправлено: NeoNox от 08 Января 2002, 16:49:21
Значит нужно смотреть...
В wbb стандарт-шаблоны. Новшеств нет.
Название: эх
Отправлено: Green Kakadu от 08 Января 2002, 17:37:54
eval для разборки шаблонов - не есть хорошо, впрочем, я тебе уже свое мнение по этому поводу сказал приватно ;)
Может все таки попробовать сделать по максиму регулярными выражениями - быстрее и безопаснее.
Лично мне интеллектуальность шаблонов пока требовалась лишь такая:
если что-то есть, то включаем такой-то код/контент, а это можно и через рег.выр. сделать
Название: Шаблоны
Отправлено: Britva от 08 Января 2002, 19:09:35
Да, но почему тогда такие форумы, как wbb/xmb/vB летают. Они же ведь используют везде eval.
Название: Шаблоны
Отправлено: Stek от 08 Января 2002, 21:18:19
Britva
Эти форумы не могут летать :) Не знаю как WBB, а два оставшихся юзают в среднем по 20 запросов в базу при создании страницы, так что для них парсинг темплейтов - едрунда.

Кстати, думаю стардартные ереги безопаснее и с мой точки зрения более удобны для дизайнера.
Название: Шаблоны
Отправлено: Britva от 08 Января 2002, 22:05:47
Stek
WBB - http://wbbhacks.com, http://www.script.com.ua, http://forum.xonix.ru, http://board.ee

Цитировать
Кстати, думаю стардартные ереги безопаснее и с мой точки зрения более удобны для дизайнера.

согласен - безопаснее :), но eval удобнее для программиста :)
Название: Шаблоны
Отправлено: Макс от 09 Января 2002, 00:57:20
Цитировать

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

По-моему более правильно поступили авторы EasyTemplate - использовали простые строковые параметры (str_replace(), strtr()) - в результате их шаблон работает очень быстро и безопасно но слабая функциональность - хотя без нее часто можно обойтись.


Цитировать
согласен - безопаснее , но eval удобнее для программиста
Я выбираю безопасность :)
Название: Шаблоны
Отправлено: Britva от 09 Января 2002, 01:15:03
Цитировать
Я выбираю безопасность :)

Я тоже, но не думаю, что дизайнер все время будет мечтать о крушении сайта :)

кстати, интересная статейка насчет оптимизации и времени выполнения: http://php.spb.ru/php/speed.html
Название: Шаблоны
Отправлено: Britva от 19 Января 2002, 02:24:19
Сделал более новую версию + редактор этих шаблонов и пример использования.
http://eugeny.com/programmer/scripts/template.zip

описания пока нет, скоро напишу.
Название: Шаблоны
Отправлено: Stek от 08 Февраля 2002, 21:56:09
Поднимаю тему :)

Реально столкнулся с быстродействием шаблонов, теперь в полном смятении.

Через eval использовать не приятно.
Нашел вот http://templatepower.codocad.com/ аналог FastTemplate, но по заявкам авторов до 5 раз быстрее.

Что делать с FastTemplate - даже и не знаю.
phpBB 2 полностью на них перешли. В результате парсинг стал жрать дикое колличество ресурсов. В форуме куча криков о том, что при переходе на новую версию - сервер падает. А жалобы именно на апач, а не на MySQL как у всех остальных форумов.

Вот тут и вспомнил про этот топик.  Так елки палки, какие эе темплейты лучше при большом колличестве запросов, с учетом того что темплейт таки сложный .
Название: Шаблоны
Отправлено: NAS от 08 Февраля 2002, 22:00:42
Посмотрел систему шаблонов VB, там всё на eval.
Название: Шаблоны
Отправлено: Макс от 09 Февраля 2002, 02:37:56
Может easyTemplate - они не используют регулярных выражений и он даже чуть быстрее того что Britva писал.
Вроде еще Smarty все хвалят.
Название: Шаблоны
Отправлено: Stek от 09 Февраля 2002, 13:10:40
Мда, тяжела доля выбора.
А где почитать про easyTemplate можно ?
Название: Шаблоны
Отправлено: Макс от 09 Февраля 2002, 19:14:57
Я его на диске взял, который с книгой "PHP4: разработка веб-приложений" был. Если хочешь - могу прислать куда-нибудь.
Название: Проблема с получением переменной из шаблона Fasttemplate
Отправлено: от 28 Февраля 2002, 13:34:35
Help plz... не знаю как достать переменную которая задается
в адресной строке (index.php?a=b) из шаблона.
global $a не выходит :-( Тут походу проблема в fasttemplate - подскажите как поступить....
Название: Шаблоны
Отправлено: Stek от 01 Марта 2002, 02:00:32
при чем тут темплейты то ?
По идее это в $HTTP_GET_VARS["a"]