Вопрос по шаблонизации сайта

Тема в разделе "PHP", создана пользователем DOCSistems, 22 авг 2015.

  1. DOCSistems

    DOCSistems

    Регистрация:
    25 сен 2014
    Сообщения:
    4
    Симпатии:
    0
    Здравствуйте! Есть такой вопрос. Имеется шаблон, и соответственно шапка, футер и левая колонка вынесены каждая часть в отдельный файл, и все они подключаются в индексный файл через include, а центральная часть динамически изменяется. Но я на днях наткнулся на такой пример
    Код:
    function connection_files($name_file){
      ob_start();
       include($name_file);
      return ob_get_clean();
    }
    
    $content = connection_files($_GET["view"] . "php");
    в параметр функции передается подключаемый шаблон, и я чет не пойму в чем разница? результат же один и тот же, что просто через include подключать что через буферизацию. Или может я чего не допонимаю?
     
  2. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    2.050
    Симпатии:
    777
    В таком варианте разницы, наверное, действительно нет, но вообще разница есть. Буфер позволяет получить результат работы отдельного куска кода до завершения выполнения всего стека и что-либо сделать с этим результатом. В случае с шаблонами, например, можно вывести результат работы кода в разных местах страницы выполнив его только один раз, а не при каждой вставке (то есть, закешировать результат выполнения в переменную), либо можно закешировать результат в файл и при последующих запросах вообще не выполнять код, если он есть в кеше. Кроме того, буферизация позволяет дополнительно обработать результат работы буферизированного кода, если нет возможности вклиниться в сам код.
     
  3. DOCSistems

    DOCSistems

    Регистрация:
    25 сен 2014
    Сообщения:
    4
    Симпатии:
    0
    Спасибо большое, теперь разобрался:Good: