Аналог Smarty

Статус
В этой теме нельзя размещать новые ответы.
Доказательство медленности есть?:-] по тестам автора обгоняет его только php нативный, когда все в одном файле.

PS: blitz компилиться как модуль к php и написан на C.
 
по тестам автора обгоняет его только php нативный, когда все в одном файле.
По тестам автора... Винда тоже sp2 (виста) хотя по мнению автора еще два года назад она была готова.
Сравни скорость с xslt или другими шаблонками пишущихся для многопосещаемых проектов, хотя знал бы PHP сам бы понял что сказал. А шаблонки написанные на С отдельная история.
 
  • Заблокирован
  • #13
По тестам автора... Винда тоже sp2 (виста) хотя по мнению автора еще два года назад она была готова.
Сравни скорость с xslt или другими шаблонками пишущихся для многопосещаемых проектов, хотя знал бы PHP сам бы понял что сказал. А шаблонки написанные на С отдельная история.

А можно ссылку на тесты?
 
У себя использую xTemplate если надо что-то высоконагружено перехожу на Blitz архитектура чем-то похожа, вобще нравяться блочные шаблонизаторы у меня в коде вобще нет html разметки в любом ее виде.

Кто будет говорить что блитз медленый это зря, хабрхабр и еще куча крупных проектов сидят именно на нем.
 
Использую самописный шаблонный движок
Код:
<?php

  class template {
    var $template="";     // templace contents
    var $form_file="";    // template filename

    // load template from file to $template
    function load($template_file) {
      global $syslog;
      global $lang;

      $this->form_file=$template_file;
      if (!file_exists($this->form_file))
        $syslog->error(sprintf($lang['lang_core_template_loading_error'], $this->form_file));
      $this->template=@file($this->form_file);
      if (($this->template[0][0]=='<') || ($this->template[0][1]=='!')) 
        $this->template[0]=""; // remove first comment line
      $this->template=@implode($this->template, "");
    }

    // reload template from file $template
    function reload() {
      $this->load($this->form_file);
    }

    // replace key to value
    function replace($template_word, $value) {
      $this->template=str_replace($template_word, $value, $this->template);
    }

    // return parsed template
    function content() {
      return $this->template;
    }
  }
?>

Шаблоны в HTML, как правило в первой строчке комментарий:
<-- модуль где используется, описание шаблона-->

Вызов (реальный пример:(

Код:
// инициализация шаблона
$tpl_catalog_index = new template;
// подгрузим сам шаблон
$tpl_catalog_index -> load("templates/".$config['core_template_set']."/content_catalog_index.htm");

...

while ($wp_file=$sql->fetch($wp_file_res)) {
  $tpl_catalog_resolution_link->reload(); // перезагрузим шаблон
  $resolution=$wp_file['width'].'x'.$wp_file['height'].', '.round($wp_file['size']/1024).' Kb';
  $tpl_catalog_resolution_link->replace("{res}", $resolution); // заменим ключи на значения
  ...
}

как-то так...

Хотя насчёт быстроты str_replace() можно и поспорить, но для меня это не критично.

Единственное, чего не реализовано - рекурсивная замена тегов. Но это опять же на любителя и по-необходимости.
 
У себя использую xTemplate если надо что-то высоконагружено перехожу на Blitz архитектура чем-то похожа, вобще нравяться блочные шаблонизаторы у меня в коде вобще нет html разметки в любом ее виде.

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

Использую самописный шаблонный движок

как-то так...

Хотя насчёт быстроты str_replace() можно и поспорить, но для меня это не критично.

Единственное, чего не реализовано - рекурсивная замена тегов. Но это опять же на любителя и по-необходимости.

Ох народ вы как поисковики, в который вбил слово, а он тебе кучк ненужной информации по этому слову выдаёт, так и вы увидели SMARTY, ага шаблонизатор, надо отписать что-то про шаблонизаторы, почитайте первый пост.

jID, ну пляя где ты увидел в своём коде, что то похожее на синтаксис смарти????

Xtemplate, он работает только с блоками, ничего схожего опять же со smarty там особо нет.
 
jID, ну пляя где ты увидел в своём коде, что то похожее на синтаксис смарти????

Читаю сабж и всё что написано:
Требуется аналог СМАРТИ, примерно тот же синтаксис, но полегче в объёме, и более быстрый. Lapa Engine не предлагать

Выбирая шаблонную двигу решил остановиться на самописной. Смарти в топку.
Мой пример тяжелее smarty? Возьми xdebug и прогони. Уверен, выполнится быстрее.
 
Смарти подобный шаблонизатор


Поддерживает аналогичные конструкции как в смарти
как утверждают разработчики работает быстрее смарти, плюс в том что он прост в освоении.
 
  • Заблокирован
  • #19
Одно только для меня неясно - как дебажить сайты построенные на шаблонизаторах ?
 
  • Заблокирован
  • #20
Почитал... нда... А что мешает свой написать если другие не устраивают?

Я раньше пользовался Smarty... хотя и сейчас у нас в конторе все пользуют. Я, для своих проектов написал (за одну ночь) "почти" похожий на Smarty маленький шаблонизатор... Меня устраивает.



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