(PHP 7, PHP 8)
deflate_init — 初始化一個增量 deflate 上下文
使用指定的 encoding 初始化一個增量壓縮的 deflate 上下文。
請注意,此處的 window 選項僅設定演算法的視窗大小,與 zlib 過濾器不同,zlib 過濾器中的相同參數也會設定要使用的編碼;編碼必須使用 encoding 參數設定。
限制:目前無法在 GZIP 壓縮串流上設定標頭資訊,這些資訊設定如下:GZIP 簽章 (\x1f\x8B);壓縮方法 (\x08 == DEFLATE);6 個零位元組;作業系統設定為目前系統 (\x00 = Windows,\x03 = Unix 等)
encodingZLIB_ENCODING_* 常數之一。
options一個關聯式陣列,可能包含以下元素
壓縮等級,範圍為 -1..9;預設值為 -1。
壓縮記憶體等級,範圍為 1..9;預設值為 8。
zlib 視窗大小(對數),範圍為 8..15;預設值為 15。zlib 將視窗大小從 8 改為 9,並且從 zlib 1.2.8 開始,如果針對 ZLIB_ENCODING_RAW 或 ZLIB_ENCODING_GZIP 要求視窗大小為 8,則會發出警告並失敗。
ZLIB_FILTERED、ZLIB_HUFFMAN_ONLY、ZLIB_RLE、ZLIB_FIXED 或 ZLIB_DEFAULT_STRATEGY (預設值) 之一。
成功時傳回 deflate 上下文資源 (zlib.deflate),失敗時傳回 false。
如果傳遞給 options 的選項無效或無法建立上下文,則會產生等級為 E_WARNING 的錯誤。
| 版本 | 說明 |
|---|---|
| 8.0.0 | 成功時,此函式現在會傳回 DeflateContext 實例;先前傳回的是 資源。 |