Вложенные буферы вывода

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

Бо́льшая часть функций семейства ob_* работает только с активным буфером вывода (который запустили последним), поэтому только активный буфер получится сбросить, очистить или отключить. К функциям, которые работают с другими буферами, относятся — функция ob_list_handlers(), которая возвращает список активных обработчиков вывода, и функция ob_get_status(), которая умеет возвращать информацию только об активном буфере или обо всех буферах.

Вызов функций ob_get_level() или ob_get_status() вернёт уровень вложенности активного буфера вывода.

Предостережение

Функции ob_get_level() и ob_get_status() по-разному оценивают один и тот же уровень вложенности; значение отклонено на единицу. Для функции ob_get_level() первый уровень — это 1. Тогда как для функции ob_get_status() первый уровень — это 0.

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top