Настройка во время выполнения


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

Модуль zlib предоставляет возможность сжатия передаваемых страниц (в т.ч. динамических) на лету, если браузер это поддерживает. За сжатие отвечают три параметра в конфигурационном файле php.ini.

Конфигурационные параметры Zlib
Имя По умолчанию Меняемо Список изменений
zlib.output_compression "0" PHP_INI_ALL Доступно с PHP 4.0.5.
zlib.output_compression_level "-1" PHP_INI_ALL Доступно с PHP 4.3.0.
zlib.output_handler "" PHP_INI_ALL Доступно с PHP 4.3.0.
Для подробного описания констант PHP_INI_*, обратитесь к разделу Где могут быть установлены параметры конфигурации.

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

zlib.output_compression boolean/integer

Следует ли сжимать страницы. Если значение равно "On" в php.ini (или в настройках Apache), страницы будут сжиматься, если браузер посылает заголовок "Accept-Encoding: gzip" или "deflate". При этом в вывод будут добавлены заголовки "Content-Encoding: gzip" (соответственно "deflate") и "Vary: Accept-Encoding". В режиме исполнения, заголовок должен быть установлен до момента отправки.

Аргументы также могут быть целочисленного типа, а не логического "On/Off", с помощью этого вы можете устанавливать размер выходного буфера (по умолчанию равен 4 КБ).

Замечание:

output_handler должен быть пустым, если выбрано значение 'On'! Вместо него следует использовать zlib.output_handler.

zlib.output_compression_level integer

Уровень сжатия используется для прозрачного сжатия вывода. Укажите значение между 0 (без сжатия) и 9 (максимальное сжатие). По умолчанию значение -1 позволяет серверу решать, какой уровень использовать.

zlib.output_handler string

Если zlib.output_compression активирован, нельзя указывать дополнительные обработчики вывода (output handlers). Этот параметр выполняет то же, что и output_handler, но в ином порядке.