gzencode
(PHP 4 >= 4.0.4, PHP 5, PHP 7)
gzencode — Создать сжатую строку gzip
Описание
$data
, int $level
= -1
, int $encoding
= ZLIB_ENCODING_GZIP
) : string|false
Эта функция возвращает сжатую версию входных данных data
,
аналогично выводу программы gzip.
Подробности о формате GZIP см. » Формат файла GZIP. Спецификация версии 4.3 (RFC 1952).
Список параметров
-
data
-
Данные для кодирования.
-
level
-
Уровень сжатия. 0 - без сжатия, 9 - максимальное сжатие. Если не указано, будет использоваться уровень сжатия по умолчанию библиотеки zlib.
-
encoding
-
Режим сжатия, может быть
FORCE_GZIP
(по умолчанию) илиFORCE_DEFLATE
.До PHP 5.4.0 в случае использования
FORCE_DEFLATE
, возвращалась строка, сжатая по стандартному алгоритму zlib deflate (с заголовками zlib) после заголовка файла gzip, но без проверочной суммы crc32 в конце.Начиная с версии PHP 5.4.0, использование константы
FORCE_DEFLATE
генерирует вывод, совместимый с RFC 1950, состоящий из заголовка zlib, сжатых данных и контрольной суммы Adler.
Возвращаемые значения
Сжатая строка или false
в случае ошибки.
Примеры
Возвращаемые данные будут содержать соответствующие заголовки и структуры данных как в обычном .gz-файле, например:
Пример #1 Создание файла gzip
<?php
$data = implode("", file("bigfile.txt"));
$gzdata = gzencode($data, 9);
$fp = fopen("bigfile.txt.gz", "w");
fwrite($fp, $gzdata);
fclose($fp);
?>
Смотрите также
- gzdecode() - Декодирует строку, сжатую с помощью gzip
- gzdeflate() - Сжимает строку
- gzinflate() - Распаковать сжатую строку
- gzuncompress() - Распаковать сжатую строку
- gzcompress() - Сжать строку
- » Спецификация ZLIB Compressed Data (RFC 1950)