deflate_init

(PHP 7)

deflate_initインクリメンタルな圧縮コンテキストを初期化する

説明

deflate_init ( int $encoding [, array $options = array() ] ) : resource

指定された encoding を使って インクリメンタルな圧縮コンテキストを初期化します。

window オプションは、 アルゴリズムのウィンドウサイズだけを設定することに注意してください。 これは、同じパラメータが利用するエンコーディングも設定する zlib filter と異なります。 この関数では、エンコーディングは encoding で指定しなければなりません。

制限: GZIP 圧縮されたストリームにヘッダ情報を設定する方法が現状は存在しません。 これは、次のようにして設定されます: GZIP シグナチャ (\x1f\x8B); 圧縮メソッド (\x08 == DEFLATE); 6 個のゼロバイト; 現在のオペレーティングシステム (\x00 = Windows, \x03 = Unix, など)

パラメータ

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 または stringsarray。 (デフォルト: 辞書なし)

返り値

成功した場合、圧縮コンテキストリソース(zlib.deflate) を返します。 失敗した場合に FALSE を返します

エラー / 例外

不正なオプションが options に渡されたり、 コンテキストが作れなかった場合には、 E_WARNING レベルのエラーが発生します。

参考

  • deflate_add() - インクリメンタルにデータを圧縮する
  • inflate_init() - インクリメンタルな解凍コンテキストを初期化する