LXXXVI. Funciones de Compresión

Este módulo usa la función de zlib de Jean-loup Gailly y Mark Adler para leer y grabar archivos comprimidos .gz, de un modo transparente. Con este módulo, es requisito usar una versión de zlib igual o posterior a 1.0.9.

Este módulo contiene versiones de la mayoría de las funciones de Sistema de archivos que funcionan con los archivos comprimidos con gzip (y con los no-comprimidos tambien, pero no con conectores (sockets)).

Pequeño código de ejemlo

Abre un archivo temporal y escribe en él, una cadena de prueba, y luego presenta el cotenido del archivo dos veces

Ejemplo 1. Ejemplo de Zlib


<?php
  $filename = tempnam('/tmp', 'zlibtest').'.gz';
  print "<html>\n<head></head>\n<body>\n<pre>\n";
  $s = "Sólo es una prueba, prueba, prueba,prueba, prueba, prueba!\n";
  // Abre el archivo para escribirlo con máximo de compresión
  $zp = gzopen($filename, "w9");
  // Escribe la cadena en él
  gzwrite($zp, $s);
  // Cierra el fichero
  gzclose($zp);
  // Abre el fichero para lectura
  $zp = gzopen($filename, "r");
  // Lee 3 caracteres
  print gzread($zp, 3);
  // Salida hasta el final del fichero, para cerrarlo luego.
  gzpassthru($zp);
  print "\n";
  // Abre el fichero y muestra su contenido (por segunda vez).
  if (readgzfile($filename) != strlen($s)) {
          echo "Error con las funciones zlib!";
  }
  unlink($filename);
  print "<pre>\n</h1></body>\n</html>\n";
?>
Tabla de contenidos
gzclose — cierra un puntero a archivo-gz abierto
gzeof — prueba el fin-de-archivo de un puntero de archivo-gz
gzfile — lee el archivo gz completo en un arreglo
gzgetc — toma caracteres de un archivo-gz
gzgets — toma una linea del archivo apuntado
gzgetss — toma una linea del archivo-gz apuntado y le quita los tags HTML
gzopen — open gz-file
gzpassthru — Devuelve el remanente de datos de un fichero-gz
gzputs — escribe al fichero-gz que se apunta
gzread — Lee archivos-gz en modo Binario
gzrewind — Reposiciona al puntero de archivo-gz, al inicio de aquel
gzseek — Posiciona el puntero del archivo-gz
gztell — Indica la posición de lecto-escritura en el archivo
gzwrite — Escritura de ficheros gz en modo Binario
readgzfile — devuelve el fichero-gz