inflate_init
(PHP 7, PHP 8)
inflate_init — インクリメンタルな解凍コンテキストを初期化する
説明
指定された encoding
でインクリメンタルな解凍コンテキストを初期化します
パラメータ
encoding
-
定数
ZLIB_ENCODING_*
のうちのひとつ options
-
次の要素を含む連想配列:
- level
-
-1 .. 9 までの圧縮レベル。デフォルトは -1 です。
- memory
-
1 .. 9 までの圧縮メモリレベル。デフォルトは8です。
- window
-
8 .. 15 までの zlib の window サイズ(対数)。 デフォルトは 15 です。
- strategy
-
ZLIB_FILTERED
,ZLIB_HUFFMAN_ONLY
,ZLIB_RLE
,ZLIB_FIXED
,ZLIB_DEFAULT_STRATEGY
(デフォルト) のうちのひとつです。 - dictionary
-
あらかじめ設定されたディクショナリの string または strings の array。 (デフォルト: 辞書なし)
戻り値
成功した場合、解凍コンテキストリソース(zlib.inflate
) を返します。
失敗した場合に false
を返します
エラー / 例外
不正なオプションが options
に渡されたり、
コンテキストが作れなかった場合には、 E_WARNING
レベルのエラーが発生します。
変更履歴
バージョン | 説明 |
---|---|
8.0.0 | 成功時に、この関数は InflateContext クラスのインスタンスを返すようになりました。 これより前のバージョンでは、 resource を返していました。 |
注意
gzinflate() と異なり、 インクリメンタルな解凍コンテキストは、 解凍済みデータの大きさを強制しません。 よって、Zip爆弾を自動的に防御できません。
参考
- inflate_add() - インクリメンタルにエンコードされたデータを解凍する
- deflate_init() - インクリメンタルな圧縮コンテキストを初期化する