Новые книги

Для каждого предпринимателя одним из ключевых вопросов является постановка и организация бухгалтерского учета. Это неудивительно: без отлаженной бухгалтерии в принципе невозможно нормальное функционирование любого субъекта хозяйствования. Сразу отметим: в наше время сводить дебет с кредитом нужно только с помощью специальных программных средств. Ведь ручной учет не только отнимает много времени; его качество оставляет желать много лучшего, а в большинстве случаев – неприемлемо в принципе: он громоздок, неповоротлив, малоинформативен, изобилует ошибками и отнимает огромное количество сил и времени.

В предлагаемой книге доступным и понятным языком рассказывается о простых и в то же время эффективных программных продуктах, специально созданных для автоматизации учета индивидуального предпринимателя или небольшой фирмы.
Только Дэн Кеннеди мог осмелиться написать такое руководство по безжалостному менеджменту – без всякого рассусоливания и высокоученых теорий, только железные рецепты, проверенные на деле. Теперь, когда у вас есть эта книга, уму непостижимо, как вы могли до сих пор без нее обходиться.

Она облекает вас правом вернуть себе власть над своим бизнесом, задавать правила, ставить во главу угла прибыль и добиваться настоящих результатов от тех, кто на вас работает.

Каждый, кто вооружится установками знаменитого бизнес-гуру и последовательно применит в бизнесе – и в жизни! – описанные на этих страницах методы и техники, очень скоро увидит перемены к лучшему.

3-е издание.

Функции 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>\n<head></head>\n<body>\n<pre>\n";
$s = "Only a test, test, test, test, test, test, test, test!\n";

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

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

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

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

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

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

print "\n";

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

?>
Содержание
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