Простейший шаблонизатор.

Статус
В этой теме нельзя размещать новые ответы.

Mendel

Гуру форума
Регистрация
27 Янв 2008
Сообщения
215
Реакции
65
* Название: templ_lite
* Автор: Mendel, zzzlab.com
* Версия: 1.00
* основные функции: Простейший шаблонизатор. Самый минимальный набор функций. Простота и скорость.
* Описание: Берется основной файл шаблона /templ/skin.tpl
в нем находим псевдотег <MYBODY> и заменяем его на содержимое файла с именем переданным в параметрах, расширением .tpl и лежащим в папке templ. Далее берем из глобального массива все переменные и тупо заменяем на их значение все {имя переменной}.
Примеры в архиве.
 

Вложения

  • lite.rar
    1,3 KB · Просмотры: 41
Теперь после простейшего идет чуть более функциональный, но все равно очень простой.
* Название: templ
* Автор: Mendel, zzzlab.com
* Версия: 3.00
* основные функции: Простой шаблонизатор. Простейшие массивы, простейший if, понятие "скины". Простота и скорость.
* Описание: Берется основной файл шаблона /templ/skin.tpl
в нем находим псевдотег <MYBODY> и заменяем его на содержимое файла с именем переданным в параметрах, расширением .tpl и лежащим в папке templ. Далее берем из глобального массива все переменные и тупо заменяем на их значение все {имя переменной}. Более подробное описание в архиве, включая пример.
 

Вложения

  • full.rar
    5,3 KB · Просмотры: 62
На мой взгляд не есть гут смешивать стили управляющих конструкций.

используем для одних { и }
а для других < и >

HTML:
<IF=user_loged>
Здравствуйте <b>{user_loged_name}</b>! <br>
</IF=user_loged>
 
На мой взгляд не есть гут смешивать стили управляющих конструкций.

используем для одних { и }
а для других < и >

HTML:
<IF=user_loged>
Здравствуйте <b>{user_loged_name}</b>! <br>
</IF=user_loged>

В readme по этому поводу сказанно - сделанно специально исходя из того чтобы файлы шаблонов в браузере были максимально похожи на реальную страничку. Ну а <MYBODY> по такой логике должен быть конечно не тегом, но он один, и чтобы иетуитивно было понятно где какой стиль я его сделал тэгом. (Все переменные в фигурных скобках, все остальное в треугольных).
 
а какой смысл файлам шаблона максимально быть похожими на html страничку? наоборот намного удобнее, если сразу видно где html, а где условные конструкции и переменные
 
а какой смысл файлам шаблона максимально быть похожими на html страничку? наоборот намного удобнее, если сразу видно где html, а где условные конструкции и переменные

Чтобы их было проще редактировать.
Мне так удобнее.
Поскольку этот шаблонизатор стоит уже далеко не в одном десятке проектов, то естественно меняться это не будет, хотябы по чисто историческим причинам. Поэтому обсуждение этого вопроса не имеет смысла.
 
Чтобы их было проще редактировать.
Мне так удобнее.
Поэтому обсуждение этого вопроса не имеет смысла.

Вопрос проще для кого ?
Для себя, наверно Да!
Для работы в команде или использование другими людьми - думаю не оч.

Действительно если это пишется для себя дальнейшее обсуждение не имеет смысла.
 
Вопрос проще для кого ?
Для себя, наверно Да!
Для работы в команде или использование другими людьми - думаю не оч.

Действительно если это пишется для себя дальнейшее обсуждение не имеет смысла.

:mad: Ведь не хотел же флудить.... а прийдется. :)
В шаблонизаторе всего 5 конструкций: переменные, <array>.<if>,<inc>,<MYBODY>. Неужели комуто может быть сложно запомнить что переменные оформлены в одном стиле, а служебные конструкции в другом? Не понимаю. Это и удобно иногда просто в браузере открыть скин какойто, или шаблон, чтобы понять а кто это, чем читать код. Далее - читая код легко видно где переменные а где конструкции. Нет ограничений в названии пременных - хоть table называй. При этом в браузере выводятся только те веши в место которых чтото будет подставлена, а те вещи которые только управляют выводом не выводятся. Это моя позиция.

Теперь объясните мне чем это неудобно для команды и других людей? Только конкретные аргументы а не общие фразы.
PS: не один из тех кто писал скины под этот шаблонизатор не жаловался. :) Хотя может вы и правы, и может если убедите то в новых версиях сделаю иначе... Если уже есть две версии шаблонизатора (в смысле lite и полная), то может и третья появится :)
 
в javascript прекрасно уживаются переменные и обозначения управляющих конструкций без всякого разделения формата их вида.

какому идиоту придет в голову назвать переменную именем IF?

спрашивается, что в "Простейшем шаблонизаторе" делают сразу два вида конструкций - {} и <> - есть ли в них необходимость? очевидно, необходимости нет. а раз нет необходимости, то конструкция должна быть одна - {}.

дополнительно: с какой радости ты предлагаешь юзерам шаблонизатора слешить спецсимволы {} не обычным \, а обратным /?
 
может вопрос и идеотский но можно, что бы не такие {} дуги, а $$, [[]] вот так например
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху