deflate_init
(PHP 7, PHP 8)
deflate_init — Initialize an incremental deflate context
說明
Initializes an incremental deflate context using the specified
encoding.
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 the
encoding 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.)
參數
-
encoding -
One of the
ZLIB_ENCODING_*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 to15. zlib changes a window size of8to9, and as of zlib 1.2.8 fails with a warning, if a window size of8is requested forZLIB_ENCODING_RAWorZLIB_ENCODING_GZIP. - strategy
-
One of
ZLIB_FILTERED,ZLIB_HUFFMAN_ONLY,ZLIB_RLE,ZLIB_FIXEDorZLIB_DEFAULT_STRATEGY(the default). - dictionary
-
A string or an array of strings of the preset dictionary (default: no preset dictionary).
返回值
Returns a deflate context resource (zlib.deflate) on
success, 或者在失敗時返回 false.
錯誤/異常
If an invalid option is passed to options or the
context couldn't be created, an error of level E_WARNING
is generated.
更新日誌
| 版本 | 說明 |
|---|---|
| 8.0.0 | On success, this function returns a DeflateContext instance now; previously, a resource was returned. |
參見
- deflate_add() - Incrementally deflate data
- inflate_init() - Initialize an incremental inflate context