Оптимизация шаблонов

Тема в разделе "PHP", создана пользователем ArtyGrand, 18 мар 2010.

Статус темы:
Закрыта.
Модераторы: latteo
  1. ArtyGrand

    ArtyGrand Постоялец

    Регистр.:
    6 июн 2009
    Сообщения:
    81
    Симпатии:
    37
    Задался я тут одним вопросом

    что меньше ресурсов требует: ??

    1. генерирование в php переменных, а потом их передача в шаблон, где они и становятся полноценной страницей.
    Через
    $контент= "content"
    require "шаблон";

    2. или забирание данных с шаблона, в которые уже вставляются все переменные
    $html = file_get_contents( '.шаблон' );
    $html = str_replace( '{title}', $pageTitle, $html );
    echo $html;


    и на много ли больше это все жрет, чем собственно грязный код?
    через print "много кода"
     
  2. Abliganto

    Abliganto Постоялец

    Регистр.:
    30 ноя 2009
    Сообщения:
    111
    Симпатии:
    46
    2й вариант полюбому более ресурсоёмкий, т.к. вы во-первых по-любому храните в памяти значение переменных, а потом ещё реплейсите в большом тексте.

    Мой совет: пишите как вам удобней. Время затраченое на разработку дороже времени серверного. Нет разницы Smarty или <?php echo $var ?> это просто экономия на спичках. Главное знать что вы хотите от разрабатываемого сайта.
     
  3. ArtyGrand

    ArtyGrand Постоялец

    Регистр.:
    6 июн 2009
    Сообщения:
    81
    Симпатии:
    37
    собственно я использую первый вариант.

    а что на счет грязного кода?
     
  4. Abliganto

    Abliganto Постоялец

    Регистр.:
    30 ноя 2009
    Сообщения:
    111
    Симпатии:
    46
    Если он вас устраивает, то ничего :)

    Я предпочитаю Smarty. Вообще ежедневно я сталкиваюсь с различными шаблонизаторами и больше всего не люблю plain php вставки. Для простых шаблонов вроде ничего, но когда весь шаблон пестрит PHP вставками - врагу не пожелаешь такого шаблона.

    Я всегда исхожу из задачи. Если я имею дело с серьёзным проектом и кучей шаблонов, я беру мощный шаблонизатор (smarty). Если же я поточно делаю десятки-сотни маленьких простых сайтов, то ни о каких smarty и речи не может быть :)
     
  5. ArtyGrand

    ArtyGrand Постоялец

    Регистр.:
    6 июн 2009
    Сообщения:
    81
    Симпатии:
    37
    разве нет прироста скорости?

    ps. <?php echo $var ?> я использую как <?=$var;?> так что не сильно раздражает взгляд.
     
  6. Abliganto

    Abliganto Постоялец

    Регистр.:
    30 ноя 2009
    Сообщения:
    111
    Симпатии:
    46
    Скорости чего? Вы замечаете разницу между 0.001 секундой и 0.01 секундой? Я нет, по этому не заморачиваюсь. Всё зависит от сайта, если там нет трафика, то время генерации даже в 1 секунду будет приемлимым :) К чему экономить на спичках?

    У большинства PHP программистов есть комплекс "улучшения производительности их скриптов" когда на то нет никаких объективных причин. Всех почему-то заботит что быстрей count() или sizeof(), echo или print. Я использую count() и echo() просто потому что они мне нравятся и я знаю что echo быстрее print и что sizeof быстрее чем count, но я так же знаю что разница в производительности составляет 0.01% и по этому не заморачиваюсь и вам не советую :)

    P.S. в PHP 5.3 short tags deprecated, по этому я их не использую.
     
    ArtyGrand нравится это.
  7. ArtyGrand

    ArtyGrand Постоялец

    Регистр.:
    6 июн 2009
    Сообщения:
    81
    Симпатии:
    37
    Вот оно че, михалыч...

    теперь понятно все.
    потому, что не знают, как и я, насколько быстрей это является.
    теперь не буду заморачиваться Спасибо. -_6
     
  8. Langley1

    Langley1 Прохожие

    <?php echo $var; ?> будет в любом случае менее ресурсоемко чем смарти.
    Плюс к этому смарти - это очень жирная, тормозная сволочь, которая на проектах с большой посещаемостью становится одним из самых узких мест. Неимеет значения используете ли вы кеш в смарти или нет: объект там и так создается и кушает память,
     
  9. Abliganto

    Abliganto Постоялец

    Регистр.:
    30 ноя 2009
    Сообщения:
    111
    Симпатии:
    46
    О какой посещаемости идёт речь? Для хабрахабра или для данного форума это критично, просто не стоит пугать новичков тем, что смарти тяжёлый. Поверьте, собственный шаблонизатор будет не сильно быстрее того же смарти, а времени на него вы потратите вагон. У меня смарти на сайтах с > 30тыс. хитами в сутки создаёт нулевую нагрузку, самое узкое место - это всегда БД. Но не будем отклоняться от темы :)
     
Статус темы:
Закрыта.