(PHP 7, PHP 8)
deflate_init — Инициализировать контекст инкрементального сжатия
Инициализирует контекст инкрементального сжатия с использованием указанной кодировки encoding
.
Обратите внимание, что опция window
задаёт только размер окна алгоритма, в отличие от фильтров zlib, где одноимённая опция также используется для установки используемой кодировки; кодировка должна быть установлена с помощью параметра encoding
.
Ограничения: в текущий момент невозможно установить информацию заголовка для сжатого потока GZIP, которая устанавливается следующим образом: подпись GZIP (\x1f\x8B
); метод сжатия (\x08
== DEFLATE); 6 нулевых байтов; текущая операционная система (\x00
= Windows, \x03
= Unix и т.д.)
encoding
Одна из констант ZLIB_ENCODING_*
.
options
Ассоциативный массив, который может содержать следующие элементы:
Уровень сжатия в диапазоне -1..9; по умолчанию -1.
Уровень памяти сжатия в диапазоне 1..9; по умолчанию 8.
Размер окна zlib (логарифмический) в диапазоне 8
..15
; по умолчанию 15
. zlib изменяет размер окна с 8
на 9
, а с zlib 1.2.8 будет выдавать предупреждение, если запрашивается размер окна равный 8
для ZLIB_ENCODING_RAW
или ZLIB_ENCODING_GZIP
.
Одна из констант: ZLIB_FILTERED
, ZLIB_HUFFMAN_ONLY
, ZLIB_RLE
, ZLIB_FIXED
или ZLIB_DEFAULT_STRATEGY
(по умолчанию).
Строка или массив строк текущего словаря (по умолчанию предустановленного словаря нет).
Возвращает ресурс контекста сжатия (zlib.deflate
) или false
, если возникла ошибка.
Если в options
была передана некорректная опция или контекст не может быть создан, то будет вызвана ошибка уровня E_WARNING
.
Версия | Описание |
---|---|
8.0.0 | В случае успешного выполнения функция возвращает экземпляр DeflateContext; раньше, возвращался ресурс (resource). |