![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
Opik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: 24 Всего: 55 |
Что по Вашему мнению должен включать в себя шаблонизатор и какие функции вообще иметь?
1) Работа с одном документе с разными шаблонами. 2) Работа с данными (Как вывод простой переменной, так и массива в шаблоне). 3) Компиляция (Если файл шаблона изменился, "компилируем" заного). Высказывайте мнения, алгоритмы, советы. Интересно всё. |
|||
|
||||
Opik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: 24 Всего: 55 |
Хм, ещё один немаловажный вопрос, какой делать синтаксис шаблонизатора?
можно сделать нечто вроде:
аля XML, что бы можно было прогонять через валидаторы всякие и т.д. но получается немного громоздко, кому как удобно? тоже инетересно. |
|||
|
||||
Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 122 Всего: 261 |
Для меня шаблонизатор это только парс шаблона и создание документра. Весь программный код вне шаблона.
|
|||
|
||||
skalex |
|
|||
![]() Хороший человек ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 895 Регистрация: 2.4.2004 Репутация: 8 Всего: 23 |
Обязательно должна быть поддержка циклических и условных операций ... Очень полезная вещь - это возможность получить вывод шаблона в переменную (без вывода на экран) (аналог fetch в Smarty).
|
|||
|
||||
Master |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1530 Регистрация: 13.5.2003 Где: Mother Russia Репутация: 8 Всего: 10 |
Есть уже готовый смарти, есть xslt, есть php на крайний случай... вопрос. зачем усложнять? я раньше тоже от безделия писал собственные шаблонизаторы и Изотоп этой болезнью болеет
![]() ![]() -------------------- Вавилон, Вавилон Что ты построил, что разрушил? Вавилон, Вавилон Плавятся души дьявольским огнем. |
|||
|
||||
skalex |
|
|||
![]() Хороший человек ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 895 Регистрация: 2.4.2004 Репутация: 8 Всего: 23 |
Master, согласен с Вами!
|
|||
|
||||
IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
Шаблонизатор должен по моему мнению много чего уметь:
1. Замена подстановок. 2. Замена констант (определенные в коде текстовые блоки). 3. Работа с циклами. 3.1 Работа с функциями внутри циклов. 4. Работа с уловными блоками, в т.ч. и в циклах. 5. Возможность подключения текстовых/РНР файлов в шаблон. 6. Некие утилиты для составления select'ов и прочих мелочей используемых в формах. ОФФ: Master, гы ![]() -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
skalex |
|
|||
![]() Хороший человек ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 895 Регистрация: 2.4.2004 Репутация: 8 Всего: 23 |
На написание такой вещи как шаблонизатор может уйти уйма времени ... Все же мне было бы жалко его терять! Тем более что есть масса готовых решений.
IZ@TOP, все, что Вы написали есть в том же Smarty + можно расширять до бесконечности. Другое дело - если появляется совершенно новая концепция или еще что-нибудь в этом духе ... Но вроде с шаблонизаторами уже все ясно и прозрачно ... |
|||
|
||||
Opik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: 24 Всего: 55 |
Mace
посмотри Smarty получше, посмотри СКОЛЬКО оно весит. Посмотри ВО ЧТО оно компилирует простенький пример. Да, Смарти это сила, но для больших проектов это лишний тормоз, ИМХО.
Есть масса всех примеров, зачем вообще писать что то своё? Однако всё же пишут и создают. Вот в Смарти есь кеширование, хоть какое то, где оно ещё есть? (в более менее нормальном виде). Ты думал как такое сделать самому? А если попробовать? Имхо процесс написания своего велосипеда повышает профессиональный уровень программиста. Ведь если на то пошло, 3/4 сайтов можно написать только на PEAR. Добавлено @ 14:58 Mal Hack Это я привел пример. Синтаксиса, аля XML, в этом была суть примера. |
|||
|
||||
skalex |
|
|||
![]() Хороший человек ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 895 Регистрация: 2.4.2004 Репутация: 8 Всего: 23 |
Ну я ужал движок Smarty до 170 Kb. Не такой уж и большой размер. Opr, ты же одно время пропагандировал Smarty. Что заставляет отказываться от него ? Просто я знаком со Smarty чуть более недели ... На первый взгяд мне очень понравилось, хотя некоторая тормознутость имеет место. Может и не стоит начинать пользоваться ? |
|||
|
||||
Opik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: 24 Всего: 55 |
Mace
Я не заставляю от него отказываться. Движок хороший, мощный, но для некоторых задач ОЧЕНЬ тяжелый. Имхо выбор шаблнонизатора это что-то из ряда религиозных войн. Можешь специально создать тему, где обсуждать, в этой теме же обсуждается функционал удобного(!) шаблонизатора. |
|||
|
||||
Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 122 Всего: 261 |
ИМХО, шаблонизатор - по сути основная нагрузка на скрипт, следовательно он должен наиболее оптимально к эт ом скрипту быть адаптирован.
Зачем? Зачем тратить машинное время на парс этих циклов. Не проще ли их выполнять на программном уровне сразу? Просто хочется понять. |
|||
|
||||
Opik |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: 24 Всего: 55 |
Mal Hack
для этого и служит
|
||||
|
|||||
Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 122 Всего: 261 |
Opr но ведь в нем все равно будет оставаться то, что нам (для конкретной задачи) не нужно. Или я чего-то не понимаю...
|
|||
|
||||
Aliance |
|
|||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: 14 Всего: 137 |
Для меня в шаблонизаторе главное (кроме, естественно, быстродействия, отсутствия багов и прочего) это - простота!
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |