請注意「PHP deflate」!=「HTTP deflate」。
HTTP 中使用的 deflate 編碼實際上是 zlib 編碼。
以下是 PHP 函式回傳的內容
gzencode() == gzip
gzcompress() == zlib (也就是 HTTP deflate)
gzdeflate() == *原始* deflate 編碼
(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)
gzdeflate — 壓縮字串
data
要壓縮的資料。
level
壓縮等級。可以設定為 0 表示不壓縮,最高到 9 表示最大壓縮。如果未指定,則預設壓縮等級將是 zlib 函式庫的預設壓縮等級。
encoding
ZLIB_ENCODING_*
常數之一。
壓縮後的字串,如果發生錯誤則回傳 false
。
範例 #1 gzdeflate() 範例
<?php
$compressed = gzdeflate('Compress me', 9);
echo $compressed;
?>
請注意「PHP deflate」!=「HTTP deflate」。
HTTP 中使用的 deflate 編碼實際上是 zlib 編碼。
以下是 PHP 函式回傳的內容
gzencode() == gzip
gzcompress() == zlib (也就是 HTTP deflate)
gzdeflate() == *原始* deflate 編碼
gzcompress 產生的資料較長,因為它將編碼資訊嵌入到字串中。如果您壓縮的資料只會在一台機器上處理,則無需擔心使用哪個函式。但是,如果您將使用這些函式壓縮的資料傳遞到不同的機器,則應該使用 gzcompress。
這是 gzdeflate 的基準測試 (.txt 檔案)
-------------------------------------------------------------------------------------------------------------------
等級 ZLIB_ENCODING_RAW ZLIB_ENCODING_DEFLATE ZLIB_ENCODING_GZIP
-------------------------------------------------------------------------------------------------------------------
等級 0 7.22MB (7574498 位元組) -0.0077% 7.22MB (7574504 位元組) -0.0077% 7.22MB (7574516 位元組) -0.0079%
層級 1 2.31MB (2420570 位元組) 68.0407% 2.31MB (2420576 位元組) 68.0406% 2.31MB (2420588 位元組) 68.0405%
層級 2 2.18MB (2287031 位元組) 69.8039% 2.18MB (2287037 位元組) 69.8038% 2.18MB (2287049 位元組) 69.8036%
層級 3 2.11MB (2216241 位元組) 70.7385% 2.11MB (2216247 位元組) 70.7384% 2.11MB (2216259 位元組) 70.7383%
層級 4 2.01MB (2110510 位元組) 72.1345% 2.01MB (2110516 位元組) 72.1344% 2.01MB (2110528 位元組) 72.1343%
層級 5 1.98MB (2073133 位元組) 72.628% 1.98MB (2073139 位元組) 72.6279% 1.98MB (2073151 位元組) 72.6278%
層級 6 1.93MB (2026592 位元組) 73.2425% 1.93MB (2026598 位元組) 73.2424% 1.93MB (2026610 位元組) 73.2423%
層級 7 1.93MB (2019252 位元組) 73.3394% 1.93MB (2019258 位元組) 73.3393% 1.93MB (2019270 位元組) 73.3392%
層級 8 1.92MB (2018354 位元組) 73.3513% 1.92MB (2018360 位元組) 73.3512% 1.92MB (2018372 位元組) 73.351%
層級 9 1.92MB (2018354 位元組) 73.3513% 1.92MB (2018360 位元組) 73.3512% 1.92MB (2018372 位元組) 73.351%
-------------------------------------------------------------------------------------------------------------------