Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Шаблонизатор 
:(
    Опции темы
Opik
Дата 6.6.2005, 03:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Vingrad developer
Сообщений: 1918
Регистрация: 6.10.2004
Где: Рига

Репутация: 24
Всего: 55



Что по Вашему мнению должен включать в себя шаблонизатор и какие функции вообще иметь?
1) Работа с одном документе с разными шаблонами.
2) Работа с данными (Как вывод простой переменной, так и массива в шаблоне).
3) Компиляция (Если файл шаблона изменился, "компилируем" заного).

Высказывайте мнения, алгоритмы, советы. Интересно всё.
PM MAIL Skype   Вверх
Opik
Дата 6.6.2005, 04:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Vingrad developer
Сообщений: 1918
Регистрация: 6.10.2004
Где: Рига

Репутация: 24
Всего: 55



Хм, ещё один немаловажный вопрос, какой делать синтаксис шаблонизатора?
можно сделать нечто вроде:
Код

  <tpl:if $var eq '1'>
    <tpl:out>$var</tpl:out>
  </tpl:if>

аля XML, что бы можно было прогонять через валидаторы всякие и т.д.
но получается немного громоздко, кому как удобно? тоже инетересно.
PM MAIL Skype   Вверх
Mal Hack
Дата 6.6.2005, 08:34 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Для меня шаблонизатор это только парс шаблона и создание документра. Весь программный код вне шаблона.
PM ICQ   Вверх
skalex
Дата 6.6.2005, 08:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хороший человек
**


Профиль
Группа: Участник Клуба
Сообщений: 895
Регистрация: 2.4.2004

Репутация: 8
Всего: 23



Обязательно должна быть поддержка циклических и условных операций ... Очень полезная вещь - это возможность получить вывод шаблона в переменную (без вывода на экран) (аналог fetch в Smarty).
PM   Вверх
Master
Дата 6.6.2005, 12:30 (ссылка) |  (голосов:4) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1530
Регистрация: 13.5.2003
Где: Mother Russia

Репутация: 8
Всего: 10



Есть уже готовый смарти, есть xslt, есть php на крайний случай... вопрос. зачем усложнять? я раньше тоже от безделия писал собственные шаблонизаторы и Изотоп этой болезнью болеет smile но только вряд-ли удастся здесь сделать какое-либо революционное открытие smile


--------------------
Вавилон, Вавилон
Что ты построил, что разрушил?
Вавилон, Вавилон
Плавятся души дьявольским огнем.
PM WWW ICQ   Вверх
skalex
Дата 6.6.2005, 12:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хороший человек
**


Профиль
Группа: Участник Клуба
Сообщений: 895
Регистрация: 2.4.2004

Репутация: 8
Всего: 23



Master, согласен с Вами!
PM   Вверх
IZ@TOP
Дата 6.6.2005, 13:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 44
Всего: 73



Шаблонизатор должен по моему мнению много чего уметь:
1. Замена подстановок.

2. Замена констант (определенные в коде текстовые блоки).

3. Работа с циклами.
3.1 Работа с функциями внутри циклов.

4. Работа с уловными блоками, в т.ч. и в циклах.

5. Возможность подключения текстовых/РНР файлов в шаблон.

6. Некие утилиты для составления select'ов и прочих мелочей используемых в формах.

ОФФ: Master, гы smile . Ну страдаю... просто до xslt не дорос еще... как только время будет разобраться...


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
skalex
Дата 6.6.2005, 13:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хороший человек
**


Профиль
Группа: Участник Клуба
Сообщений: 895
Регистрация: 2.4.2004

Репутация: 8
Всего: 23



На написание такой вещи как шаблонизатор может уйти уйма времени ... Все же мне было бы жалко его терять! Тем более что есть масса готовых решений.
IZ@TOP, все, что Вы написали есть в том же Smarty + можно расширять до бесконечности.
Другое дело - если появляется совершенно новая концепция или еще что-нибудь в этом духе ... Но вроде с шаблонизаторами уже все ясно и прозрачно ...
PM   Вверх
Opik
Дата 6.6.2005, 14:55 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Vingrad developer
Сообщений: 1918
Регистрация: 6.10.2004
Где: Рига

Репутация: 24
Всего: 55



Mace
посмотри Smarty получше, посмотри СКОЛЬКО оно весит. Посмотри ВО ЧТО оно компилирует простенький пример. Да, Смарти это сила, но для больших проектов это лишний тормоз, ИМХО.
Цитата
есть масса готовых решений.

Есть масса всех примеров, зачем вообще писать что то своё? Однако всё же пишут и создают.
Вот в Смарти есь кеширование, хоть какое то, где оно ещё есть? (в более менее нормальном виде). Ты думал как такое сделать самому? А если попробовать?
Имхо процесс написания своего велосипеда повышает профессиональный уровень программиста. Ведь если на то пошло, 3/4 сайтов можно написать только на PEAR.
Добавлено @ 14:58
Mal Hack
Это я привел пример. Синтаксиса, аля XML, в этом была суть примера.
PM MAIL Skype   Вверх
skalex
Дата 6.6.2005, 15:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хороший человек
**


Профиль
Группа: Участник Клуба
Сообщений: 895
Регистрация: 2.4.2004

Репутация: 8
Всего: 23



Цитата
посмотри Smarty получше, посмотри СКОЛЬКО оно весит

Ну я ужал движок Smarty до 170 Kb. Не такой уж и большой размер.

Opr, ты же одно время пропагандировал Smarty. Что заставляет отказываться от него ? Просто я знаком со Smarty чуть более недели ... На первый взгяд мне очень понравилось, хотя некоторая тормознутость имеет место. Может и не стоит начинать пользоваться ?
PM   Вверх
Opik
Дата 6.6.2005, 15:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Vingrad developer
Сообщений: 1918
Регистрация: 6.10.2004
Где: Рига

Репутация: 24
Всего: 55



Mace
Я не заставляю от него отказываться. Движок хороший, мощный, но для некоторых задач ОЧЕНЬ тяжелый. Имхо выбор шаблнонизатора это что-то из ряда религиозных войн. Можешь специально создать тему, где обсуждать, в этой теме же обсуждается функционал удобного(!) шаблонизатора.
PM MAIL Skype   Вверх
Mal Hack
Дата 6.6.2005, 16:55 (ссылка) |  (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



ИМХО, шаблонизатор - по сути основная нагрузка на скрипт, следовательно он должен наиболее оптимально к эт ом скрипту быть адаптирован.

Цитата(IZ @ 6.6.2005, 14:34)
4. Работа с уловными блоками, в т.ч. и в циклах.

Зачем? Зачем тратить машинное время на парс этих циклов. Не проще ли их выполнять на программном уровне сразу? Просто хочется понять.
PM ICQ   Вверх
Opik
Дата 6.6.2005, 17:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Vingrad developer
Сообщений: 1918
Регистрация: 6.10.2004
Где: Рига

Репутация: 24
Всего: 55



Mal Hack
Цитата
ИМХО, шаблонизатор - по сути основная нагрузка на скрипт, следовательно он должен наиболее оптимально к эт ом скрипту быть адаптирован.

для этого и служит
Цитата
3) Компиляция (Если файл шаблона изменился, "компилируем" заного).

PM MAIL Skype   Вверх
Mal Hack
Дата 6.6.2005, 17:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Opr но ведь в нем все равно будет оставаться то, что нам (для конкретной задачи) не нужно. Или я чего-то не понимаю...
PM ICQ   Вверх
Aliance
Дата 6.6.2005, 18:13 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 14
Всего: 137



Для меня в шаблонизаторе главное (кроме, естественно, быстродействия, отсутствия багов и прочего) это - простота!
PM MAIL WWW ICQ Skype   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0864 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.