Restart buffer php bitrix

Буферизация

Уважаемые участники сообщества, пожалуйста дайте ссылку где написано про буферизацию.
В частности интересует: что содержит буфер или для чего он нужен, какой максимально
возможный размер буфера, при работе с AJAX почему нужно очищать буфер,
где найти описание функции $GLOBALS[‘APPLICATION’]->RestartBuffer();

Я не ленив и не холявщик. Просто не могу найти документации. Искал, в том числе, в коде битрикса
RestartBuffer() не нашел определения функции. CMain extend CallMain в описании класса тоже нет.
Ну где мне узнать ответ на мои вопросы?

class CAllMain function RestartBuffer()< $this->bShowHeadString = false; $this->bShowHeadScript = false; $this->buffer_man = true; ob_end_clean(); $this->buffer_man = false; $this->buffer_content_type = array(); $this->buffer_content = array(); if(function_exists("getmoduleevents")) < foreach(GetModuleEvents("main", "OnBeforeRestartBuffer", true) as $arEvent) ExecuteModuleEventEx($arEvent); >ob_start(array(&$this, "EndBufferContent")); >

Группы на сайте создаются не только сотрудниками «1С-Битрикс», но и партнерами компании. Поэтому мнения участников групп могут не совпадать с позицией компании «1С-Битрикс».

Продукты

Управление сайтом

Битрикс24

Интернет-магазин + CRM

Решения

Для интернет-магазинов

Каталог готовых решений

Внедрение

Выбрать партнера

Проверить партнера

Стать партнером

1С-Битрикс http://www.1c-bitrix.ru Общие вопросы info@1c-bitrix.ru Приобретение и лицензирование продуктов : sales@1c-bitrix.ru Маркетинг/мероприятия/PR marketing@1c-bitrix.ru Партнерская программа partners@1c-bitrix.ru Мы работаем с 10:00 до 19:00 по московскому времени. Офис в Москве 127287 Россия Московская область Москва 2-я Хуторская улица дом 38А строение 9 Офис в Калининграде +7 (4012) 51-05-64 Офис в Калининграде 236001 Россия Калининградская область Калининград Московский проспект 261 Офис в Киеве ukraine@1c-bitrix.ru Телефон в Киеве +3 (8044)221-55-33 Офис в Киеве 01033 Украина Калининградская область Киев улица Шота Руставели 39/41 офис 1507

Читайте также:  Диплом на php темы

Контент для лиц от 16 лет и старше

© 2001-2023 «Битрикс», «1С-Битрикс». Работает на 1С-Битрикс: Управление сайтом. Политика конфиденциальности

Источник

Сброс буфера в компоненте bitrix:sale.order.payment

После очередного обновления страница оплаты одного из сайтов клиента стала отображаться без вывода header шаблона.
На странице используется компонент bitrix:sale.order.payment в начале которого появилась строка:
$APPLICATION->RestartBuffer();

Никто не подскажет зачем так сделали, нарушив дизайн самой важной страницы магазина (страницы оплаты)?

$APPLICATION->IncludeComponent( "bitrix:sale.order.payment", "", Array( ),false);

На клиентском сайте этот вызов приводит к отсутствию header вплоть до вызова bitrix:sale.order.payment.
Если вызов закомментировать, остальной сайт работает норм.

Морозов Валерий, ну да. Компонент делает сброс буфера. Поэтому и header нет.
Раньше этого он не делал. Зачем добавили непонятно. Кому надо и так мог вывести содержимое компонента без header и footer

Группы на сайте создаются не только сотрудниками «1С-Битрикс», но и партнерами компании. Поэтому мнения участников групп могут не совпадать с позицией компании «1С-Битрикс».

Продукты

Управление сайтом

Битрикс24

Интернет-магазин + CRM

Решения

Для интернет-магазинов

Каталог готовых решений

Внедрение

Выбрать партнера

Проверить партнера

Стать партнером

1С-Битрикс http://www.1c-bitrix.ru Общие вопросы info@1c-bitrix.ru Приобретение и лицензирование продуктов : sales@1c-bitrix.ru Маркетинг/мероприятия/PR marketing@1c-bitrix.ru Партнерская программа partners@1c-bitrix.ru Мы работаем с 10:00 до 19:00 по московскому времени. Офис в Москве 127287 Россия Московская область Москва 2-я Хуторская улица дом 38А строение 9 Офис в Калининграде +7 (4012) 51-05-64 Офис в Калининграде 236001 Россия Калининградская область Калининград Московский проспект 261 Офис в Киеве ukraine@1c-bitrix.ru Телефон в Киеве +3 (8044)221-55-33 Офис в Киеве 01033 Украина Калининградская область Киев улица Шота Руставели 39/41 офис 1507

Контент для лиц от 16 лет и старше

© 2001-2023 «Битрикс», «1С-Битрикс». Работает на 1С-Битрикс: Управление сайтом. Политика конфиденциальности

Источник

Что делает метод RestartBuffer?

Не нашел доков по данному методу, может кто нибудь по подробнее описать что он делает и в каких ситуациях полезен?

самое простое объяснение, он отсекает то, что находится выше него по верстке, нужен например для аякс пагинации, часто использую

Также используется, когда страница делает POST/AJAX-запрос к самой себе (заполнение формы, например), и должна вернуть массив JSON вместо стандартного дизайна.
В компоненте, используемом на странице:
$this->IncludeComponentTemplate(«template_1»);

template_1.php:
global $APPLICATION; $APPLICATION->RestartBuffer();
// ваш код
echo json_encode($result);

Продукты

Управление сайтом

Битрикс24

Интернет-магазин + CRM

Решения

Для интернет-магазинов

Каталог готовых решений

Внедрение

Выбрать партнера

Проверить партнера

Стать партнером

1С-Битрикс http://www.1c-bitrix.ru Общие вопросы info@1c-bitrix.ru Приобретение и лицензирование продуктов : sales@1c-bitrix.ru Маркетинг/мероприятия/PR marketing@1c-bitrix.ru Партнерская программа partners@1c-bitrix.ru Мы работаем с 10:00 до 19:00 по московскому времени. Офис в Москве 127287 Россия Московская область Москва 2-я Хуторская улица дом 38А строение 9 Офис в Калининграде +7 (4012) 51-05-64 Офис в Калининграде 236001 Россия Калининградская область Калининград Московский проспект 261 Офис в Киеве ukraine@1c-bitrix.ru Телефон в Киеве +3 (8044)221-55-33 Офис в Киеве 01033 Украина Калининградская область Киев улица Шота Руставели 39/41 офис 1507

Контент для лиц от 16 лет и старше

© 2001-2023 «Битрикс», «1С-Битрикс». Работает на 1С-Битрикс: Управление сайтом. Политика конфиденциальности

Источник

Оцените статью