Список вопросов
Как зайти в Даркнет?!
25th January, 01:11
8
0
Как в tkinter из поля ввода Entry получить значение в одну переменную и обновить строку кнопкой, затем получить ещё одно введённое значение и затем сложить их. Ниже пример кода
21st July, 19:00
899
0
Программа, которая создает фейковые сервера в поиске игровых серверов CS 1.6 Steam
21st March, 17:43
952
0
Очень долго работает Update запрос Oracle
27th January, 09:58
916
0
не могу запустить сервер на tomcat HTTP Status 404 – Not Found
21st January, 18:02
907
0
Где можно найти фрилансера для выполнения поступающих задач, на постоянной основе?
2nd December, 09:48
942
0
Разработка мобильной кроссплатформенной военной игры
16th July, 17:57
1727
0
период по дням
25th October, 10:44
3957
0
Пишу скрипты для BAS только на запросах
16th September, 02:42
3722
0
Некорректный скрипт для закрытия блока
14th April, 18:33
4614
0
прокидывать exception в блоках try-catch JAVA
11th March, 21:11
4382
0
Помогите пожалуйста решить задачи
24th November, 23:53
6087
0
Не понимаю почему не открывается детальное описание продукта
11th November, 11:51
4352
0
Нужно решить задачу по программированию на массивы
27th October, 18:01
4400
0
Метода Крамера С++
23rd October, 11:55
4309
0
помогите решить задачу на C++
22nd October, 17:31
4002
0
Помогите решить задачу на python с codeforces
22nd October, 11:11
4492
0
Python с нуля: полное руководство для начинающих
18th June, 13:58
2599
0
Какой шаблонизатор взять для нового проекта на php?
Просмотров: 453
 
Ответов: 13
Многие по-инерции используют Smarty, кто-то пробует Twig, кто-то — экзотический Blitz, вот хочется узнать мнение общественности.
Blitz на мой взгляд имеет существенный недостаток — высокие трудозатраты на разработку, так как требуется плотное взаимодействие дизайнера и программиста для изменений и для быстрой разработки/прототипирования, на мой взгляд, не очень подходит.
Из Smarty-подобных систем мне же известен только Twig, быть может есть еще хорошие варианты? От шаблонизатора хочется объектности и расширяемости.
XSLT советую. Для него можно XML-ку собрать каким нить SimpleXML — очень удобно. Каждый модуль проекта может в один и тот же объект SimpleXML вставлять свои данные а потом XSLT уже выбирает то, что ему нужно.
Из плюсов — хорошо переносится между языками (если вдруг понадобится), можно с помощью тех — же XSLT попробовать реализовать REST API. Да просто довольно правильный стиль навязывает при создании шаблонов. Опять же, для NGINX есть модули для XSL трансформации внутри него (хотя смысла делать шаблонизацию внутри легкого асинхронного веб-сервера я лично не вижу)
Если умудриться распарсенные шаблоны каким-то образом сохранять в памяти между запросами (на PHP трудно реализуемо пожалуй) то вообще летать будет.
Twig — наследование шаблонов, компиляция шаблонов в читабильный вид (класс), все лучшее от Smarty, sandbox, авто экранирование строк, есть готовые классы для интеграции практически во всех фрэймворках. Blitz — очень не удобно работать с шаблонами, мне показался очень тугим для разработки. Скорость Blitz… это сомнительное преимущество, — компилированные шаблоны твига + eAccelerator не будут уступать Blitzу.
Quicky:
habrahabr.ru/blogs/php/45337/
code.google.com/p/quicky/wiki/Manual
у меня в опубликованных есть еще обзоры квики. я пользуюсь уже 2 года
Сейчас очень многие смотрят в сторону HAML + SASS.
Эти языки пришли из мира Ruby и сейчас есть их адаптации практически для всех значимых языков.
Например, для PHP можно смотреть phphaml.sourceforge.net/, www.yiiframework.com/extension/haml-and-sass/ и так далее.
Еще один плюс в сторону Smarty: Eclipse + Smarty Plugin = фришная и удобная связка. После перехода на Mac это единственное комфортное IDE для пыха.
Общее отвечу для тех кто отписывает что «PHP сам хороший шаблонизатор»:
Вы или не работали с крупными проектами, или я сочувствую тем кто их поддерживает. Разделение логики и представления по дефолту должно быть. XSLT+XML — подходит; Smarty, Twig — тоже. А вот КОД в HTML — это реально от лукавъго.
Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться