Here is a benchmark comparing strengths of bzip and gzip compression:
gz[0] - 1.647ms - 189058 Byte (100%)
gz[1] - 3.333ms - 44572 Byte (23.58%)
gz[2] - 3.519ms - 42685 Byte (22.58%)
gz[3] - 4.713ms - 40840 Byte (21.6%)
gz[4] - 5.274ms - 39111 Byte (20.69%)
gz[5] - 6.526ms - 37039 Byte (19.59%)
gz[6] - 8.036ms - 36206 Byte (19.15%)
gz[7] - 9.098ms - 35940 Byte (19.01%)
gz[8] - 12.87ms - 35713 Byte (18.89%)
gz[9] - 14.319ms - 35707 Byte (18.89%)
bz[1] - 40.282ms - 32247 Byte (17.06%)
bz[2] - 43.716ms - 29690 Byte (15.7%)
bz[3] - 43.765ms - 29690 Byte (15.7%)
bz[4] - 44.213ms - 29690 Byte (15.7%)
bz[5] - 43.704ms - 29690 Byte (15.7%)
bz[6] - 43.814ms - 29690 Byte (15.7%)
bz[7] - 43.934ms - 29690 Byte (15.7%)
bz[8] - 43.725ms - 29690 Byte (15.7%)
bz[9] - 45.129ms - 29690 Byte (15.7%)
bzcompress
(PHP 4 >= 4.3.3, PHP 5, PECL bz2:1.0)
bzcompress — 文字列をbzip2形式のデータに圧縮する
説明
bzcompress() は、与えられた文字列を圧縮し、 bzip2 形式のデータとして返します。
パラメータ
- source
-
圧縮する文字列
- blocksize
-
圧縮時のブロック長を指定します。 1 から 9 の数とする必要があります。この場合、9 の圧縮度が最大ですが、リソースの消費量も最大となります。 blocksize のデフォルトは 4 です。
- workfactor
-
繰り返しが多い、最悪の入力データの場合の圧縮処理の動作を制御します。 この値は、0 から 250 までとなり、0 は特別な場合、30 はデフォルト値となります。
workfactor によらず、 生成される出力は同じになります。
返り値
圧縮された文字列、もしくはエラー時はエラー数
例
例1 データの圧縮
<?php
$str = "sample data";
$bzstr = bzcompress($str, 9);
echo $bzstr;
?>
bzcompress
plasma
07-Sep-2008 07:39
07-Sep-2008 07:39
