PHP 8.1.28 Released!

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

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

Большинство 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