大多數檔案系統函數使用gzip來壓縮檔,本模組可以協助透明讀取gzip壓縮檔。
在PHP中Zlib支援預設並沒有開啟。需要安裝配置 PHP的時候使用 --with-zlib[=DIR]。
下面這個例子開啟了一個臨時檔案來寫入測試字串,然後兩次列印檔案內容。
Example #1 簡單的Zlib樣本
<?php $filename = tempnam('/tmp', 'zlibtest') . '.gz'; echo "<html>\n<head></head>\n<body>\n<pre>\n"; $s = "Only a test, test, test, test, test, test, test, test!\n"; // open file for writing with maximum compression $zp = gzopen($filename, "w9"); // write string to file gzwrite($zp, $s); // close file gzclose($zp); // open file for reading $zp = gzopen($filename, "r"); // read 3 char echo gzread($zp, 3); // output until end of the file and close it. gzpassthru($zp); gzclose($zp); echo "\n"; // open file and print content (the 2nd time). if (readgzfile($filename) != strlen($s)) { echo "Error with zlib functions!"; } unlink($filename); echo "</pre>\n</body>\n</html>\n";?>
相關函數:
gzclose — Close an open gz-file pointer
gzcompress — Compress a string
gzdecode — Decodes a gzip compressed string
gzdeflate — Deflate a string
gzencode — Create a gzip compressed string
gzeof — Test for EOF on a gz-file pointer
gzfile — Read entire gz-file into an array
gzgetc — Get character from gz-file pointer
gzgets — Get line from file pointer
gzgetss — Get line from gz-file pointer and strip HTML tags
gzinflate — Inflate a deflated string
gzopen — Open gz-file
gzpassthru — Output all remaining data on a gz-file pointer
gzputs — 別名 gzwrite
gzread — Binary-safe gz-file read
gzrewind — Rewind the position of a gz-file pointer
gzseek — Seek on a gz-file pointer
gztell — Tell gz-file pointer read/write position
gzuncompress — Uncompress a compressed string
gzwrite — Binary-safe gz-file write
readgzfile — Output a gz-file
zlib_decode — Uncompress any raw/gzip/zlib encoded data
zlib_encode — Compress data with the specified encoding
zlib_get_coding_type — Returns the coding type used for output compression