PHP: Hypertext Preprocessor (original) (raw)
deflate_init
(PHP 7, PHP 8)
deflate_init — Initialize an incremental deflate context
Description
Note that the window
option here only sets the window size of the algorithm, differently from the zlib filters where the same parameter also sets the encoding to use; the encoding must be set with theencoding
parameter.
Limitation: there is currently no way to set the header information on a GZIP compressed stream, which are set as follows: GZIP signature (\x1f\x8B
); compression method (\x08
== DEFLATE); 6 zero bytes; the operating system set to the current system (\x00
= Windows, \x03
= Unix, etc.)
Parameters
encoding
One of the [ZLIB_ENCODING_*](zlib.constants.php#constant.zlib-encoding-raw)
constants.
options
An associative array which may contain the following elements:
level
The compression level in range -1..9; defaults to -1.
memory
The compression memory level in range 1..9; defaults to 8.
window
The zlib window size (logarithmic) in range 8
..15
; defaults to 15
. zlib changes a window size of 8
to 9
, and as of zlib 1.2.8 fails with a warning, if a window size of 8
is requested for [ZLIB_ENCODING_RAW](zlib.constants.php#constant.zlib-encoding-raw)
or [ZLIB_ENCODING_GZIP](zlib.constants.php#constant.zlib-encoding-gzip)
.
strategy
One of [ZLIB_FILTERED](zlib.constants.php#constant.zlib-filtered)
,[ZLIB_HUFFMAN_ONLY](zlib.constants.php#constant.zlib-huffman-only)
, [ZLIB_RLE](zlib.constants.php#constant.zlib-rle)
,[ZLIB_FIXED](zlib.constants.php#constant.zlib-fixed)
or**[ZLIB_DEFAULT_STRATEGY](zlib.constants.php#constant.zlib-default-strategy)
** (the default).
dictionary
A string or an array of strings of the preset dictionary (default: no preset dictionary).
Return Values
Returns a deflate context resource (zlib.deflate
) on success, or [false](reserved.constants.php#constant.false)
on failure.
Errors/Exceptions
If an invalid option is passed to options
or the context couldn't be created, an error of level [E_WARNING](errorfunc.constants.php#constant.e-warning)
is generated.
Changelog
Version | Description |
---|---|
8.0.0 | On success, this function returns a DeflateContext instance now; previously, a resource was returned. |
See Also
- deflate_add() - Incrementally deflate data
- inflate_init() - Initialize an incremental inflate context