Какой шаблонизатор самый быстрый?

LiveKillers

Новичок
Какой шаблонизатор самый быстрый?

Мне нужен быстрый блочный шаблонизатор без управляющих конструкций.
Я тестировал FastTemplate и PowerTemplate. Первый что-то плохо работал. Второй - тормозит страшно.
Смарти не подходит в силу своего синтаксиса, а PEAR-шаблонизаторы мне кажутся слишком громоздкими (хотя, быть может, я и заблуждаюсь).
Быть может, кто-то знает действительно быстрый блочный шаблонизатор (исходники на PHP).

Извиняюсь, если создал тему не там, где нужно.
 

BEZZ

Новичок
... а напиши свой, чё там?
смотри поиск, уже обсуждалось

P.S. есть проект на С, оч быстрый
 

LiveKillers

Новичок
Автор оригинала: BEZZ
... а напиши свой, чё там?
смотри поиск, уже обсуждалось
Я искал. Действительно, обсуждали как написать СВОЙ, а я не хочу - не спец в этой области, да и вообще, зачем обсуждать велосипед...
На С или Perl или вообще как модуль PHP - да, быстро. Но надо на самом ПХП.
 

voituk

прозревший
LiveKillers
PEAR::Template_Sigma

А чем тебе FastTemplate не понравился?
И какую версию ты используешь?
 

[Gisma]

Новичок
не хочется переводить топик в флейм, но по-моему самый быстрый шаблонизатор это отсутствующий шаблонизатор, а если он все-таки нужен , то лучше ознакомся с функционалом существующих подбери подходящий для себя, либо напиши свой под поставленную задачу:)
 

slach

Новичок
блочный шаблонизатор без управляющих конструкций
на Си
в виде PHP Extension
http://sourceforge.net/projects/php-templates/

но вообще наиболее БЫСТР все же непосредственно сам PHP
т.е.
если хочется очень быстро то
index.php
<?php
//тут логика и подготовка данных
...
//тут включается шаблон со спагетти кодом
include('template.phtml');
?>
 

LiveKillers

Новичок
voituk: "А чем тебе FastTemplate не понравился?"
Синтаксически очень даже нравится. Не нравится тем, что оставляет комментарии и фигурные скобки почему-то. Использовал последнюю версию, как написано на сайте: Latest Version 1.1.0

[Gisma]
Дело в том, что у меня такая кошмарная смесь кода с html получилась, что просто смотреть нельзя. Я уже ознакомился с несколькими, вот буду ещё тестировать несколько, тот же Smarty Lite, и ещё некоторые.

slach
Да, я в последнее время тоже склоняюсь к этой версии. Просто мне кажется очень удобной поддержка блоков, а так файлов придётся много создавать.

Всем спасибо, что откликнулись. У меня вот такой вопрос: что лучше - много файлов-шаблонов или один, но с большим количеством блоков?
 

voituk

прозревший
LiveKillers
Мы наверное о разных FastTemplate-ах говорим.
Я говорю об этом http://fasttemplate.grafxsoftware.com/
В последней версии ребята вроде как прикрутили кеширование, а я дописывал возможность assign-ить обьекты и использовать конструкции а-ля:
Код:
<a href="goto?{User.login}">{User.name}</a>
При таком синтаксисе дизайнер "кипятком писал" от радости...

P.S. Сорри, немного рекламы и оффтопа получилось

-~{}~ 11.05.06 09:37:

А насчет много шаблонов файлов, или один - это ты у своего верстальщика спроси - как ему удобнее.

Да и если у тебя отдельные модули в системе, то скорее всего не стоит все пихать в один файл, а выделять логически.
Я обычно на один модуль использую один шаблоный файл.
 

Alexandre

PHPПенсионер
есть еще и blitz Template Алексея Рыбака
http://fisher.phpclub.net/blitz/blitz_ru.html
Как сказал fisher, он к лету обещал объединить blitz и php-templates.
должен получиться удобный инструмент

скорость по тесту темплейтов
Код:
------------------------------------------------------
N         Engine name         Time         Percentage 
------------------------------------------------------
1           php                      0.000544        100%     
2           blitz                      0.001008        185%     
3           php_templates          0.001812        333%     
4           smarty                 0.002006        369%     
5           str_replace          0.003713        683%     
6           phemplate           0.004514        830%     
7           fasttemplate        0.006835       1256%
 

LiveKillers

Новичок
voituk Да, я говорил об этом: http://www.thewebmasters.net/php/FastTemplate-1_1_0.tar.gz

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


Alexandre Это получается smarty быстрее FastTemplate?
Ну так использовать тогда Smarty Lite, и всё...
А откуда этот тест? И что тестировали?
 

alexhemp

Новичок
Smarty весьма быстрый хотя-бы из-за того что компилирует шаблоны в php-код (который сам по себе самый быстрый).

В итоге оверхед появляется из-за необходимости компиляции большого класса Smarty.

Используя кэш байт-кода можно этот оверхед убрать.

Теперь нет ни одной причины почему смарти будет медленно работать. В итоге проще всего оказывается не искать "простой" шаблонизатор, а использовать смарти.
 

fisher

накатила суть
2LiveKillers
в ссылке, которую тебе кинул Alexandre, есть описание что за тесты - все тесты можно скачать и прогнать на своих движках

2alexhemp
к сожалению, все так красиво только в теории - на практике много нагруженных проектов вынуждены слезать со смарти именно из-за скорости
 

itprog

Cruftsman
alexhemp
В итоге оверхед появляется из-за необходимости компиляции большого класса Smarty.
+1
Еще одно решение - разбить этот класс на несколько классов, правда не всё так просто...

-~{}~ 13.05.06 17:08:

fisher
к сожалению, все так красиво только в теории - на практике много нагруженных проектов вынуждены слезать со смарти именно из-за скорости
а с чего они взяли что тормозил именно smarty? И на что они перешли?
 

fisher

накатила суть
>>И на что они перешли?
кто-то - на "чистый" php, кто-то на php_templates.
 

alexhemp

Новичок
fisher

Как видно из тестов у php_tempaltes перед смарти чисто умозрительное приемущество.

Нужно не от смарти на shared-хостингах отказываться а брать коллокейшн и строить сервер под нагруженный проект.
 

fisher

накатила суть
alexhemp: какие тесты? те что привел Alexandre? к сожалению, это dummy-test надо смотреть на другой
http://raa.livejournal.com/62530.html#cutid1
обратите внимание, что только mess-решение может конкурировать по скорости, с выключенной проверкой compile_check. вы можете попробовать написать более оптимальный сматри-код состоящий из хотя бы нескольких шаблонов и сравнить. обратите внимание, что понимает сматри под компиляцией - и сколько приходится выполнять операцию поиска по ключам для того лишь чтобы засетить какую-т опеременную. поэтому скорость смарти без акселерации вообще _безобразна_ (правда, все остальные php-based ещё хуже). да, все серъезные проекты стоят с акселераторами, но я не понимаю что это за двигло которое "подсаживает" юзера на обязательное использование акселератора.
 

Alexandre

PHPПенсионер
А откуда этот тест? И что тестировали?
тестировал fisher, источник http://fisher.phpclub.net/blitz/blitz_ru.html

к сожалению, все так красиво только в теории - на практике много нагруженных проектов вынуждены слезать со смарти именно из-за скорости
к сожалению это именно так... и я ищу подходящий движок...
Нужно не от смарти на shared-хостингах отказываться а брать коллокейшн и строить сервер под нагруженный проект.
alexhemp, все нагруженные проекты строятся исключительно на выделенном сервере, с прособ организации хостинга (коллокейшн это или аренда сервера...) - дело вторичное. Все зависит от договора с провайдером и финансовых возможностей.
 
Сверху