Этот модуль использует функции библиотеки zlib >= 1.0.9 (http://www.cdrom.com/pub/infozip/zlib/) авторов Jean-loup Gailly и Mark Adler для прозрачного чтения и записи в gzip (.gz) сжатые файлы.
gzclose
gzclose -- закрывает открытый указатель gz-файла
Описание
int gzclose(int zp);
Закрывает gz-файл, указанный в переменной gz.
Возвращает true при успехе и false при ошибке.
Указатель gz-файла должен быть правильным, и должен указывать на файл, успешно открытый
функцией
gzopen() .
gzeofgzeof -- проверяет достигнут ли конец файла указателя gz-файла
Описание
int gzeof(int zp);
Возвращает true, если указатель gz-файла на метке EOF или произошла ошибка,
в обратном случае возвращает false.
Указатель gz-файла должен быть правильным, и должен указывать на файл, успешно открытый функцией
gzopen() .
gzfilegzfile -- читает весь gz-файл в массив
Описание
array gzfile(string filename);
Функция идентична readgzfile() , кроме того, что gzfile() возвращает файл в массив.
gzgetcgzgetc -- возвращает символ из указателя gz-файла
Описание
string gzgetc(int zp);
Возвращает строку, содержащую один (несжатый) символ, читаемый из файла, определяемого переменной zp.
Возвращает FALSE при достижении EOF (как это делает gzeof() ).
Указатель gz-файла должен быть правильным, и должен указывать на файл, успешно
открытый функцией gzopen() .
gzgetsgzgets -- Считывает строку из указателя файла
Описание
string gzgets(int zp, int length);
Возвращает строку (не сжатую) длиной от начала файла до length-1 из файла
, определяемого zp. Чтение заканчивается при достижении длины length-1, при
начале новой строки или при EOF (что произойдет раньше).
При ошибке возвращает false.
Указатель gz-файла должен быть правильным, и должен указывать на файл, успешно
открытый функцией gzopen() .
Открывает gzip (.gz) файл для чтения или записи. Параметр режима такой же как и у fopen() ("rb" или "wb"), но также может включать степень сжатия ("wb9"), или
стратегию: 'f' для фильтрованных данных как в "wb6f", 'h' для компрессии только
по Хаффману как в "wb1h" (См. описание deflateInit2 в zlib.h для более подробной
информации и параметрах стратегии).
Gzopen может использоваться для чтения файла, который не в gzip формате.
В этом случае gzread() будет напрямую читать из файла без декомпрессии.
Gzopen возвращает указатель на открытый файл, после чего все, что вы читаете из этого дескриптора
файла будет декомпрессироваться, и все что вы записываете - сжиматься.
Сдвигает индикатор позиции файла, определяемого параметром zp, на
offset в файловом потоке. Еквивалентна вызову (в С) функции
gzseek( zp, offset, SEEK_SET ).
Если файл открыт для чтения, то эта функция эмулируется, но может быть очень медленной.
Если файл открыт для записи, то поддерживается только сдвиг вперед; gzseek затем сжимает
последовательность нулей до новой начальной позиции.
В случае успеха функция возвращает 0, в обратном случае - 1.
Следует отметить, что достижение EOF не рассматривается как ошибка.
Считывает файл, распаковывает его и выводит в стандартный поток вывода.
Readgzfile() может использоваться для чтения файла, который не в формате gzip.
В этом случае readgzfile() будет сразу считывать файл, без докомпрессии.
Функция возвращает число байтов (несжатых), считанных из файла.
При ошибке возвращается false и, если функция не вызывалась как @readgzfile, будет
выведено сообщение об ошибке.
Файл с именем filename будет открыт в файловой системе и его содержимое будет выведено в стандартный поток вывода.
gzwritegzwrite -- Двоично-безопасная запись gz-файла
Описание
int gzwrite(int zp, string string, int [length]);
gzwrite() записывает содержимое строки
string в поток gz-файла, определяемый параметром
zp. Если параметр length указан, то запись будет прекращена после того, как
length байтов (несжатых) будет записано или будет достигнут конец строки string, что раньше произойдет.
Следует отметить, что если параметр length указан, то параметр настройки
magic_quotes_runtime будет игнорирован и пробелы не будут урезаны в строке string.