(PHP 4 >= 4.0.4, PHP 5, PHP 7)
gzencode — Create a gzip compressed string
$data
[, int $level
= -1
[, int $encoding_mode
= FORCE_GZIP
]] )
This function returns a compressed version of the input
data
compatible with the output of the
gzip program.
For more information on the GZIP file format, see the document: » GZIP file format specification version 4.3 (RFC 1952).
data
The data to encode.
level
The level of compression. Can be given as 0 for no compression up to 9 for maximum compression. If not given, the default compression level will be the default compression level of the zlib library.
encoding_mode
The encoding mode. Can be FORCE_GZIP
(the default)
or FORCE_DEFLATE
.
Prior to PHP 5.4.0, using FORCE_DEFLATE
results in
a standard zlib deflated string (inclusive zlib headers) after a gzip
file header but without the trailing crc32 checksum.
In PHP 5.4.0 and later, FORCE_DEFLATE
generates
RFC 1950 compliant output, consisting of a zlib header, the deflated
data, and an Adler checksum.
The encoded string, or FALSE
if an error occurred.
Version | Description |
---|---|
5.4.0 |
FORCE_DEFLATE now generates RFC 1950 compliant
output.
|
The resulting data contains the appropriate headers and data structure to make a standard .gz file, e.g.:
Example #1 Creating a gzip file
<?php
$data = implode("", file("bigfile.txt"));
$gzdata = gzencode($data, 9);
$fp = fopen("bigfile.txt.gz", "w");
fwrite($fp, $gzdata);
fclose($fp);
?>