(PHP 7, PHP 8)
deflate_init — インクリメンタルな圧縮コンテキストを初期化する
指定された encoding
を使って
インクリメンタルな圧縮コンテキストを初期化します。
window
オプションは、
アルゴリズムのウィンドウサイズだけを設定することに注意してください。
これは、同じパラメータが利用するエンコーディングも設定する zlib filter と異なります。
この関数では、エンコーディングは encoding
で指定しなければなりません。
制限: GZIP 圧縮されたストリームにヘッダ情報を設定する方法が現状は存在しません。
これは、次のようにして設定されます:
GZIP シグネチャ
(\x1f\x8B
); 圧縮メソッド (\x08
== DEFLATE); 6 個のゼロバイト; 現在のオペレーティングシステム
(\x00
= Windows, \x03
= Unix, など)
encoding
定数 ZLIB_ENCODING_*
のうちのひとつ
options
以下の要素を含む連想配列:
-1 .. 9 までの圧縮レベル。デフォルトは -1 です。
1 .. 9 までの圧縮メモリレベル。デフォルトは8です。
8
.. 15
までの zlib の window サイズ(対数)。
デフォルトは 15 です。
zlib 1.2.8 以降では、
window サイズ 8
が
ZLIB_ENCODING_RAW
や ZLIB_ENCODING_GZIP
と一緒に指定された場合、この関数は失敗し、警告が発生します。
同時に、zlib は window サイズを 8
から 9
に変更します。
ZLIB_FILTERED
,
ZLIB_HUFFMAN_ONLY
, ZLIB_RLE
,
ZLIB_FIXED
,
ZLIB_DEFAULT_STRATEGY
(デフォルト)
のうちのいずれか。
あらかじめ設定されたディクショナリの string または strings の array。 (デフォルト: 辞書なし)
成功した場合、圧縮コンテキストリソース(zlib.deflate
) を返します。
失敗した場合に false
を返します
不正なオプションが options
に渡されたり、
コンテキストが作れなかった場合には、 E_WARNING
レベルのエラーが発生します。
バージョン | 説明 |
---|---|
8.0.0 | 成功時に、この関数は DeflateContext クラスのインスタンスを返すようになりました。 これより前のバージョンでは、resource を返していました。 |