deflate_init

(PHP 7)

deflate_initИнициализировать контекст инкрементального сжатия

Описание

deflate_init ( int $encoding [, array $options = array() ] ) : resource

Инициализирует контекст инкрементального сжатия с использованием указанной кодировки encoding.

Обратите внимание, что опция window задает только размер окна алгоритма, в отличие от фильтров zlib, где одноименная опция также используется для установки используемой кодировки; кодировка должна быть установлена с помощью параметра encoding.

Ограничения: в текущий момент невозможно установить информацию заголовка для сжатого потока GZIP, которая устанавливается следующим образом: подпись GZIP (\x1f\x8B); метод сжатия (\x08 == DEFLATE); 6 нулевых байтов; текущая операционная система (\x00 = Windows, \x03 = Unix и т.д.)

Список параметров

encoding

Одна из констант ZLIB_ENCODING_*.

options

Ассоциативный массив, который может содержать следующие элементы:

level

Уровень сжатия в диапазоне -1..9; по умолчанию -1.

memory

Уровень памяти сжатия в диапазоне 1..9; по умолчанию 8.

window

Размер окна zlib (логарифмический) в диапазоне 8..15; по умолчанию 15.

strategy

Одна из констант: ZLIB_FILTERED, ZLIB_HUFFMAN_ONLY, ZLIB_RLE, ZLIB_FIXED или ZLIB_DEFAULT_STRATEGY (по умолчанию).

dictionary

Строка или массив строк текущего словаря (по умолчанию предустановленного словаря нет).

Возвращаемые значения

Возвращает ресурс контекста сжатия (zlib.deflate) или FALSE в случае возникновения ошибки.

Ошибки

Если в options была передана некорректная опция или контекст не может быть создан, то будет вызвана ошибка уровня E_WARNING.

Смотрите также

  • deflate_add() - Инкрементальное сжатие данных
  • inflate_init() - Инициализация контекста инкрементальной распоковки