ProfiPHPProfiPHP
Категория: Функции управления выводом

Функция Ob_end_clean

Функция Ob_end_clean очищает буфер вывода и отключает буферизацию вывода.
bool ob_end_clean( void )
Аргумент Void данной функции указывает лишь на то, что функция объявляется без параметров.

Функция Ob_end_clean удаляет содержимое самого верхнего буфера вывода и отключает эту буферизацию. Если вы хотите использовать содержимое буфера, то вам необходимо вызвать Ob_get_contents перед Ob_end_clean, так как все содержимое буфера удаляется при вызове Ob_end_clean.

Естественно, данную функцию логично использовать после функции Ob_start.

Буфер вывода должен запускаться функцией Ob_start с флагами PHP_OUTPUT_HANDLER_CLEANABLE и PHP_OUTPUT_HANDLER_REMOVABLE. Иначе не сработает Ob_end_clean.

Функция Ob_end_clean возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки. Основной причиной неудачного завершения работы функции является ее вызов без активной буферизации, или если буфер не может быть удален.

Если функция завершается ошибкой генерируется E_NOTICE.
Notice: ob_end_clean(): failed to delete buffer. No buffer to delete in file.php on line ...
Пример использования:
// Включаем буфер
ob_start( );
// выводим информацию
echo 'Hello World';
// возвращает содержимое буфера вывода:
$buffer = ob_get_contents( );
// очищаем буфер вывода и отключаем буферизацию вывода:
ob_end_clean( );
В результате выполнения ничего не отобразится.

Добавить комментарий

Имя:
Текст комментария: