Флаги, передаваемые обработчикам вывода

Битовая маска, которую передали во второй параметр обработчика вывода — phase даёт информацию о вызове обработчика.

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

Внимание

Значение флага PHP_OUTPUT_HANDLER_WRITE и его псевдонима PHP_OUTPUT_HANDLER_CONT равно 0, поэтому установили ли значение, определяют только операторами равенства (== или ===).

PHP устанавливает следующие флаги на конкретном этапе жизненного цикла обработчика: PHP_OUTPUT_HANDLER_START — при первом вызове обработчика. Флаг PHP_OUTPUT_HANDLER_FINAL или его псевдоним PHP_OUTPUT_HANDLER_END — при последнем вызове обработчика, т. е. он отключается. PHP также установит этот флаг, когда буферы выключаются процессом завершения работы PHP.

Конкретный вызов обработчика устанавливает следующие флаги: PHP_OUTPUT_HANDLER_FLUSH — при запуске обработчика вызовом функции ob_flush(). Флаг PHP_OUTPUT_HANDLER_WRITE или его псевдоним PHP_OUTPUT_HANDLER_CONT — когда размер содержимого обработчика равен или превышает размер буфера, а обработчик вызвали во время автоматической очистки буфера. Флаг PHP_OUTPUT_HANDLER_FLUSH — когда обработчик запустили вызовом функций ob_clean(), ob_end_clean() или ob_get_clean(). При вызове функции ob_end_clean() или ob_get_clean() также устанавливается флаг PHP_OUTPUT_HANDLER_FINAL.

Замечание: При вызове функции ob_end_flush() или ob_get_flush() флаг PHP_OUTPUT_HANDLER_FINAL устанавливается, а флаг PHP_OUTPUT_HANDLER_FLUSH — нет.

add a note

User Contributed Notes

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