PHP  
downloads | documentation | faq | getting help | mailing lists | | php.net sites | links 
search for in the  
previouszip_readgzclosenext
Last updated: Tue, 09 Jul 2002
view the printer friendly version or the printer friendly version with notes or change language to English | Brazilian Portuguese | Chinese | Czech | Dutch | Finnish | German | Hungarian | Italian | Japanese | Korean | Polish | Romanian | Russian | Spanish | Swedish | Turkish

CXI. Zlib (Compression)

Ce module utilise les fonctions de la librairie zlib () de Jean-loup Gailly et Mark Adler pour lire et �crire, de mani�re transparente, des fichiers compress�s avec gzip (.gz). Il faut utiliser la librairie zlib, de version >= 1.0.9.

Ce module contient des versions de la plupart des fonctions du chapitre syst�me de fichier. Mais celles-ci fonctionnent non seulement avec des fichiers compress�s, mais aussi des fichiers d�compress�s (hormis les fonctions utilisant les sockets).

Petit exemple

Ouvre un fichier temporaire, �crit un texte et puis affiche deux fois le contenu.

Exemple 1. Petit exemple avec 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";
  // ouvre un fichier en �criture, avec compression maximale
  $zp = gzopen($filename, "w9");
  // �crit la cha�ne dans le fichier
  gzwrite($zp, $s);
  // ferme le fichier
  gzclose($zp);
  // ouvre en lecture
  $zp = gzopen($filename, "r");
  // lis 3 caract�res
  print gzread($zp, 3);
  // Affiche le reste du fichier
  gzpassthru($zp);
  print "\n";
  // ouvre le fichier et affiche le contenu (deuxi�me passe)
  if (readgzfile($filename) != strlen($s)) {
          echo "Error with zlib functions!";
  }
  unlink($filename);
  print "<pre>\n</h1></body>\n</html>\n";
?>
Table des mati�res
gzclose -- Ferme un pointeur sur un fichier compress�.
gzcompress -- Compresse une cha�ne (ZLIB)
gzdeflate -- Compresse une cha�ne (DEFLATE)
gzencode --  Cr�e une cha�ne compress�e avec gzip
gzeof -- Teste la fin d'un fichier compress�.
gzfile --  Lit la totalit� d'un fichier compress� dans un tableau.
gzgetc --  Lit un caract�re d'un fichier compress�.
gzgets -- Lit une ligne d'un fichier compress�
gzgetss --  Lit une ligne d'un fichier compress� et supprime les balises HTML
gzinflate -- D�compresse une cha�ne (INFLATE)
gzopen -- Ouvre un fichier compress�
gzpassthru --  Lit toutes les informations restantes d'un fichier compress�
gzputs -- Ecrit dans un fichier compress�
gzread -- Lit un fichier compress� en mode binaire
gzrewind -- Replace le pointeur courant au d�but du fichier
gzseek --  D�place le pointeur courant dans un fichier compress�
gztell -- Retourne la position courante du pointeur interne
gzuncompress --  D�compresse une cha�ne gz-compress�e
gzwrite -- Ecrit un fichier compress� en mode binaire
readgzfile -- Affiche un fichier compress�
User Contributed Notes
Zlib (Compression)
add a note about notes
[email protected]
19-Apr-2001 12:02

An alternate way to handle gzip compression is to let the mod_gzip module of apache handle it. This seems to contradict the tutorial on phpbuilder.com saying that it won't compress php (or any dynamic) output, but mod_gzip as of version 1.3.17.1a works well for me.

Here is an example of an httpd.conf setup:

<IfModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_minimum_file_size 300
mod_gzip_maximum_file_size 0
mod_gzip_maximum_inmem_size 100000
mod_gzip_keep_workfiles No
mod_gzip_temp_dir /tmp
mod_gzip_item_include file \.html$
mod_gzip_item_include file \.jsp$
mod_gzip_item_include file \.php$
mod_gzip_item_include file \.pl$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-httpd-php
mod_gzip_item_include mime ^httpd/unix-directory$
mod_gzip_item_include handler ^perl-script$
mod_gzip_item_include handler ^server-status$
mod_gzip_item_include handler ^server-info$
mod_gzip_item_exclude mime ^image/.*
</IfModule>

This will automatically compress all output of your files with the .php extention or the x-httpd-php mime type. Be sure to have dechunk set to Yes.

add a note about notes
previouszip_readgzclosenext
Last updated: Tue, 09 Jul 2002
show source | credits | stats | mirror sites
Copyright © 2001, 2002 The PHP Group
All rights reserved.
This mirror generously provided by:
Last updated: Sat Aug 31 06:19:44 2002 CEST