Задать вопрос

Как вывести отложенную вьюху в момент редактирования буфера через callback ob_start?

Мне нужно достать результат вывода подключенного php файла или любой другой функции в буфер браузера во время того, как редактируется вывод буфера в браузер

ob_start("onBufferFlush");

function onBufferFlush ($buffer) 
{
    ob_start();
    include("template.php");
    $content = ob_get_clean();
    return $content . $buffer;
}


"Я встроил тебе ob-функцию внутрь ob-функции, чтобы ты мог редактировать буфер пока редактируешь буфер"

Внутри такого callback'а функции семейства ob уже не вызываются. И вообще если внутри этого callback'а вызвать хотя бы 1 echo - на экран браузера не выведется ничего, ни буфера, ни ошибки, ни варнинга, просто белый лист. Генерировать динамично html'ку налету в строковую переменную не хочу. Есть какие-нибудь варианты решения этой проблемы?

Умные люди подсказали мне, что с помощью ob нельзя контролировать буфер после его закрытия. Подскажите тогда, пожалуйста, как вывести отложенную вьюху? Например, есть сайдбар, который инициализируется в хедере, а контент в него набирается по ходу страницы. Как шаблонизировать вьюху, если не php-файлом, в котором лежит html-разметка и небольшие вставки php-кода для динамики? Не собирать же строку, в самом деле? Мне кажется этому уже давно есть какое-нибудь решение, либо я что-то делаю не так. Может быть используют какие-то сторонние шаблонизаторы типа smarty?
  • Вопрос задан
  • 211 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
IT ATLAS Москва
от 250 000 до 500 000 ₽