Сведения о вопросе

Htmlщик

00:18, 6th August, 2020

Теги

Какой шаблонизатор взять для нового проекта на php?

Просмотров: 453   Ответов: 13

Многие по-инерции используют Smarty, кто-то пробует Twig, кто-то — экзотический Blitz, вот хочется узнать мнение общественности.


Blitz на мой взгляд имеет существенный недостаток — высокие трудозатраты на разработку, так как требуется плотное взаимодействие дизайнера и программиста для изменений и для быстрой разработки/прототипирования, на мой взгляд, не очень подходит.


Из Smarty-подобных систем мне же известен только Twig, быть может есть еще хорошие варианты? От шаблонизатора хочется объектности и расширяемости.



  Сведения об ответе

PIRLO

08:18, 9th August, 2020

Хороший шаблонизатор, идеально интегрирующийся с PHP называется… PHP :) В шаблонах удобно использование альтернативного синтаксиса.


  Сведения об ответе

DO__IT

15:37, 25th August, 2020

XSLT советую. Для него можно XML-ку собрать каким нить SimpleXML — очень удобно. Каждый модуль проекта может в один и тот же объект SimpleXML вставлять свои данные а потом XSLT уже выбирает то, что ему нужно.

Из плюсов — хорошо переносится между языками (если вдруг понадобится), можно с помощью тех — же XSLT попробовать реализовать REST API. Да просто довольно правильный стиль навязывает при создании шаблонов. Опять же, для NGINX есть модули для XSL трансформации внутри него (хотя смысла делать шаблонизацию внутри легкого асинхронного веб-сервера я лично не вижу)

Если умудриться распарсенные шаблоны каким-то образом сохранять в памяти между запросами (на PHP трудно реализуемо пожалуй) то вообще летать будет.


  Сведения об ответе

#hash

23:38, 16th August, 2020

Twig — наследование шаблонов, компиляция шаблонов в читабильный вид (класс), все лучшее от Smarty, sandbox, авто экранирование строк, есть готовые классы для интеграции практически во всех фрэймворках. Blitz — очень не удобно работать с шаблонами, мне показался очень тугим для разработки. Скорость Blitz… это сомнительное преимущество, — компилированные шаблоны твига + eAccelerator не будут уступать Blitzу.


  Сведения об ответе

crush

23:32, 29th August, 2020

всё время удивляло почему в PHP люди ищут какие-то шаблонизаторы.
сам язык — мощнейший шаблонизатор.

всё остальное, кроме XSLT+XML — от лукавого.


  Сведения об ответе

ASER

09:09, 11th August, 2020

Smarty


  Сведения об ответе

baggs

01:00, 22nd August, 2020

Может посмотрите в сторону XSLT? Очень высокая отделяемость кода от представления. По скорости помедленней наверно будет чем вышеописанные. Но удобство работы с ним часто перечеркивает все минусы.


  Сведения об ответе

lool

22:03, 5th August, 2020

CTPP2

Плюсы:
— высокая скорость работы
— расширяемость (можно добавлять свои функции)
— один набор данных для шаблонизации на сервере и на клиенте (JSON)
— недавно появился модуль для шаблонизации силами nginx, он пока не production-ready, но думаю быстро станет таковым


  Сведения об ответе

ITSME

06:44, 15th August, 2020

никакой, использовать нативные шаблоны


  Сведения об ответе

SEEYOU

11:33, 13th August, 2020

никак не пойму чем шаблонизаторы на пыхе лучше и удобнее самого пыха.


  Сведения об ответе

ASER

11:31, 17th August, 2020

Quicky:
habrahabr.ru/blogs/php/45337/
code.google.com/p/quicky/wiki/Manual
у меня в опубликованных есть еще обзоры квики. я пользуюсь уже 2 года


  Сведения об ответе

SKY

02:24, 8th August, 2020

Сейчас очень многие смотрят в сторону HAML + SASS.

Эти языки пришли из мира Ruby и сейчас есть их адаптации практически для всех значимых языков.

Например, для PHP можно смотреть phphaml.sourceforge.net/, www.yiiframework.com/extension/haml-and-sass/ и так далее.


  Сведения об ответе

COOL

16:23, 7th August, 2020

Еще один плюс в сторону Smarty: Eclipse + Smarty Plugin = фришная и удобная связка. После перехода на Mac это единственное комфортное IDE для пыха.

Общее отвечу для тех кто отписывает что «PHP сам хороший шаблонизатор»:
Вы или не работали с крупными проектами, или я сочувствую тем кто их поддерживает. Разделение логики и представления по дефолту должно быть. XSLT+XML — подходит; Smarty, Twig — тоже. А вот КОД в HTML — это реально от лукавъго.


  Сведения об ответе

baggs

08:55, 4th August, 2020

github.com/everzet/jade.php

HAML в php. Очень удобная штука.


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться