ArtEngineArtEngine
Главная | Регистрация | Статистика | Расширенный поиск | Новое на сайте  

Меню

Аккаунт

Реклама

 
Реклама
 
 

Функции Zlib-Компрессии
 
Учебник РНР
Назад Вперёд

CX. Функции Zlib-компрессии

Этот модуль использует функции zlib, авторы Jean-loup Gailly и Mark Adler, для прозрачного чтения и записи архивированных файлов gzip (.gz). вы должны использовать версию zlib >= 1.0.9 с этим модулем.

Этот модуль содержит версии большинства filesystem-функций, которые работают с gzip-архивами (а также с  несжатыми файлами, но не с сокетами).

Примечание: версия 4.0.4 вводит fopen-оболочку для .gz-файлов, так что вы можете использовать специальный "zlib:" URL для доступа к сжатым файлам прозрачно, с помощью нормальных f*() функций доступа к файлам, если введёте к filename или path префикс "zlib:" при вызове fopen().

В версии 4.3.0 этот специальный префикс был изменён на "zlib://", чтобы предотвратить разночтение с именами файлов, содержащими ":".

Это требует библиотеки времени выполнения С, которая предоставляет функцию fopencookie(). Насколько я знаю, GNU libc является единственной библиотекой, предоставляющей эту возможность.

Небольшой пример кода

Здесь открывается временный файл и в него записывается тестовая строка, затем дважды печатается содержимое этого файла.

Пример 1. Небольшой пример Zlib
<?php

$filename = tempnam ("/tmp", "zlibtest").".gz";
print "<html>
<head></head>
<body>
<pre>
";
$s = "Only a test, test, test, test, test, test, test, test!
";

// открыть файл для записи с максимальным сжатием
$zp = gzopen($filename, "w9");

// записать строку в файл
gzwrite($zp, $s);

// закрыть файл
gzclose($zp);

// открыть файл для чтения
$zp = gzopen($filename, "r");

// считать три символа
print gzread($zp, 3);

// выводить до конца файла и закрыть его
gzpassthru($zp);

print "
";

// открыть файл и напечатать его содержимое (во второй раз)
if (readgzfile($filename) != strlen($s)) {
echo "Error with zlib functions!";
}
unlink($filename);
print "</pre>
</h1></body>
</html>
";

?>
Содержание
gzclose - закрывает открытый указатель gz-файла
gzcompress - сжимает строку
gzdeflate - выкачивает строку
gzencode - создаёт gzip-сжатуюю строку
gzeof - проверяет end-of-file в указателе gz-файла
gzfile - читает весь gz-файл в массив
gzgetc - получает символ из указателя на gz-файл
gzgets - получает строчку из указателя файла
gzgetss - получает строчку из указателя gz-файла и вырезает тэги HTML
gzinflate - закачивает выкачанную строку
gzopen - открывает gz-файл
gzpassthru - выводит оставшиеся в указателе gz-файла данные
gzputs - записывает в указатель gz-файла
gzread - Binary-safe чтение gz-файла
gzrewind - возвращает в начало позицию указателя gz-файла
gzseek - ищет указатель gz-файла
gztell - говорит указателю gz-файла позицию чтения/записи
gzuncompress - разжимает выкачанную строку
gzwrite - Binary-safe запись в gz-файл
readgzfile - выводит gz-файл

НазадОглавление Вперёд
zip_readВверх gzclose
На главную
 


 

Опрос

Друзья

Реклама

  2007 © PHP-Book
Designed by PHP-Book.Net