Home  >  Article  >  Backend Development  >  PHP compression and archiving - Zlib

PHP compression and archiving - Zlib

伊谢尔伦
伊谢尔伦Original
2016-11-22 09:40:381307browse

Most file system functions use gzip to compress files. This module can help transparently read gzip compressed files.

Zlib support is not enabled by default in PHP. Use --with-zlib[=DIR] when you need to install and configure PHP.

The following example opens a temporary file to write a test string, and then prints the file content twice.

Example #1 Simple Zlib example

<?php
    $filename = tempnam(&#39;/tmp&#39;, &#39;zlibtest&#39;) . &#39;.gz&#39;;
    echo "<html>\n<head></head>\n<body>\n<pre class="brush:php;toolbar:false">\n";
    $s = "Only a test, test, test, test, test, test, test, test!\n";
    // open file for writing with maximum compression
    $zp = gzopen($filename, "w9");
    // write string to file
    gzwrite($zp, $s);
    // close file
    gzclose($zp);
    // open file for reading
    $zp = gzopen($filename, "r");
    // read 3 char
    echo gzread($zp, 3);
    // output until end of the file and close it.
    gzpassthru($zp);
    gzclose($zp);
    echo "\n";
    // open file and print content (the 2nd time).
    if (readgzfile($filename) != strlen($s)) {
        echo "Error with zlib functions!";
    }
    unlink($filename);
    echo "
\n\n\n"; ?>

Related functions:

gzclose — Close an open gz-file pointer

gzcompress — Compress a string

gzdecode — Decodes a gzip compressed string

gzdeflate — Deflate a string

gzencode — Create a gzip compressed string

gzeof — Test for EOF on a gz-file pointer

gzfile — Read entire gz-file into an array

gzgetc — Get character from gz-file pointer

gzgets — Get line from file pointer

gzgetss — Get line from gz-file pointer and strip HTML tags

gzinflate — Inflate a deflated string

gzopen — Open gz-file

gzpassthru — Output all remaining data on a gz-file pointer

gzputs — alias gzwrite

gzread — Binary-safe gz-file read

gzrewind — Rewind the position of a gz-file pointer

gzseek — Seek on a gz-file pointer

gztell — Tell gz-file pointer read/ write position

gzuncompress — Uncompress a compressed string

gzwrite — Binary-safe gz-file write

readgzfile — Output a gz-file

zlib_decode — Uncompress any raw/gzip/zlib encoded data

zlib_encode — Compress data with the specified encoding

zlib_get_coding_type — Returns the coding type used for output compression


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn