php.ini или htaccess Буферизация вывода

php.ini или htaccess Буферизация вывода

Поведение этих функций зависит от установок в php.ini.

Директивы функций управления выводом:

output_buffering "0"
output_handler NULL Доступна с PHP 4.0.4.
implicit_flush "0"

Краткое разъяснение конфигурационных директив.

output_buffering boolean/integer

Вы можете включить буферизацию вывода для всех файлов, устанавливая эту директиву в ‘ON’. Если Вы желаете ограничить размер буфера к некоторому размеру — вы можете использовать максимальное число байт вместо ‘ON’, как значение для этой директивы (например, output_buffering=4096). С PHP 4.3.5, эта директива всегда выключена в PHP-CLI.

output_handler string

Вы можете переадресовать весь вывод ваших сценариев к HTML. Например, если вы устанавливаете output_handler в mb_output_handler(), кодировка будет, очевидно, преобразована в указанную кодировку. Установка любого обработчика вывода автоматически включает буферизацию вывода.

Примечание: Вы не можете использовать совместно mb_output_handler() с ob_iconv_handler() и вы не можете использовать совместно ob_gzhandler() и zlib.output_compression.

Примечание: Только встроенные функции могут использоваться с этой директивой. Для определяемых пользователем функций (пользовательских функций), используйте ob_start().

implicit_flush boolean

FALSE по умолчанию. Изменения параметра в TRUE предписывает слою вывода PHP сбрасывать на диск себя автоматически после каждого блока вывода. Это эквивалентно запросу функции PHP flush() после каждого запроса print() или echo() и каждого блока HTML.

При использовании PHP в пределах среды сети, включение этой опции влечет за собой уменьшение производительности, и вообще данная опция рекомендуется только для отладки. Эти значения по умолчанию — TRUE при работе под CLI SAPI.

Для отключения буферизации вывода данных используя htaccess:

php_flag output_buffering off